JP4765155B2 - オーサリング・システム及びオーサリング方法、並びに記憶媒体 - Google Patents

オーサリング・システム及びオーサリング方法、並びに記憶媒体 Download PDF

Info

Publication number
JP4765155B2
JP4765155B2 JP2000295719A JP2000295719A JP4765155B2 JP 4765155 B2 JP4765155 B2 JP 4765155B2 JP 2000295719 A JP2000295719 A JP 2000295719A JP 2000295719 A JP2000295719 A JP 2000295719A JP 4765155 B2 JP4765155 B2 JP 4765155B2
Authority
JP
Japan
Prior art keywords
time
editing
data
sound
action
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.)
Expired - Lifetime
Application number
JP2000295719A
Other languages
English (en)
Other versions
JP2002103258A5 (ja
JP2002103258A (ja
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.)
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
Priority to JP2000295719A priority Critical patent/JP4765155B2/ja
Application filed by Sony Corp filed Critical Sony Corp
Priority to PCT/JP2001/008602 priority patent/WO2002026450A1/ja
Priority to EP01970302A priority patent/EP1321248A4/en
Priority to US10/130,935 priority patent/US6718231B2/en
Priority to CN01802941A priority patent/CN1392824A/zh
Priority to KR1020027006629A priority patent/KR20020056949A/ko
Publication of JP2002103258A publication Critical patent/JP2002103258A/ja
Publication of JP2002103258A5 publication Critical patent/JP2002103258A5/ja
Application granted granted Critical
Publication of JP4765155B2 publication Critical patent/JP4765155B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • 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/1671Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • 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/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23267Program derived from sequence time diagram and stored in table
    • 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/20Pc systems
    • G05B2219/26Pc applications
    • G05B2219/2666Toy

Description

【0001】
【発明の属する技術分野】
本発明は、所定のシナリオに従ったデータの作成・編集を支援するためのオーサリング・システム及びオーサリング方法に係り、特に、ロボットの所定の動作パターンを記述する一連のコマンド/データの作成・編集を支援するオーサリング・システム及びオーサリング方法に関する。
【0002】
更に詳しくは、本発明は、ロボットの動作状態を規定する部品の集合を用いて動作パターンの作成・編集を支援するオーサリング・システム及びオーサリング方法に係り、特に、各部品をコンピュータ・ディスプレイ上に配置して動作パターンの作成・編集を支援するオーサリング・システム及びオーサリング方法に関する。
【0003】
【従来の技術】
電気的若しくは磁気的な作用を用いて人間の動作に似せた運動を行う機械装置のことを「ロボット」という。ロボットの語源は、スラブ語のROBOTA(奴隷機械)に由来すると言われている。わが国では、ロボットが普及し始めたのは1960年代末からであるが、その多くは、工場における生産作業の自動化・無人化などを目的としたマニピュレータや搬送ロボットなどの産業用ロボット(industrial robot)であった。
【0004】
最近では、イヌやネコのように4足歩行の動物の身体メカニズムやその動作を模したペット型ロボット、あるいは、ヒトやサルなどの2足直立歩行を行う動物の身体メカニズムや動作を模した「人間形」若しくは「人間型」のロボット(humanoid robot)など、脚式移動ロボットの構造やその安定歩行制御に関する研究開発が進展し、実用化への期待も高まってきている。これら脚式移動ロボットは、クローラ式ロボットに比し不安定で姿勢制御や歩行制御が難しくなるが、階段の昇降や障害物の乗り越え等、柔軟な歩行・走行動作を実現できるという点で優れている。
【0005】
アーム式ロボットのように、ある特定の場所に植設して用いるような据置きタイプのロボットは、部品の組立・選別作業など固定的・局所的な作業空間でのみ活動する。これに対し、移動式のロボットは、作業空間は非限定的であり、所定の経路上または無経路上を自在に移動して、所定の若しくは任意の人的作業を代行したり、ヒトやイヌあるいはその他の生命体に置き換わる種々のサービスを提供することができる。
【0006】
脚式移動ロボットの用途の1つとして、産業活動・生産活動等における各種の難作業の代行が挙げられる。例えば、原子力発電プラントや火力発電プラント、石油化学プラントにおけるメンテナンス作業、製造工場における部品の搬送・組立作業、高層ビルにおける清掃、火災現場その他における救助といったような危険作業・難作業の代行などである。
【0007】
また、脚式移動ロボットの他の用途として、上述の作業支援というよりも、生活密着型、すなわち人間との「共生」あるいは「エンターティンメント」という用途が挙げられる。この種のロボットは、ヒトあるいはイヌ(ペット)などの比較的知性の高い脚式歩行動物の動作メカニズムや四肢を利用した豊かな感情表現をエミュレートする。また、予め入力された動作パターンを単に忠実に実行するだけではなく、相手の言葉や態度(「褒める」とか「叱る」、「叩く」など)に対して動的に対応した、生き生きとした応答表現を実現することも要求される。
【0008】
従来の玩具機械は、ユーザ操作と応答動作との関係が固定的であり、玩具の動作をユーザの好みに合わせて変更することはできない。この結果、ユーザは同じ動作しか繰り返さない玩具をやがては飽きてしまうことになる。
【0009】
これに対し、知的なロボットは、動作に起因する行動モデルや学習モデルを備えており、外部からの音声や画像、触覚などの入力情報に基づいてモデルを変化させて動作を決定することにより、自律的な思考及び動作制御を実現する。ロボットが感情モデルや本能モデルを用意することにより、ロボット自身の感情や本能に従った自律的な行動を表出することができる。また、ロボットが画像入力装置や音声入出力装置を装備し、画像認識処理や音声認識処理を行うことにより、より高度な知的レベルで人間とのリアリスティックなコミュニケーションを実現することも可能となる。
【0010】
また、ユーザ操作などの外部からの刺激を検出したことに応答してこのモデルを変更する、すなわち「学習効果」を付与することによって、ユーザにとって飽きない又は好みに適応した動作パターンを提供することができる。
【0011】
昨今の脚式移動ロボットは高い情報処理能力を備えており、ロボットそのものを一種の計算機システムとして捉えることができる。したがって、ロボット上で実現される動作パターン、あるいは、複数の基本的な動作パターンの組合せによって構成される高度且つ複雑な一連の動作シーケンスは、コンピュータ・プログラミングと同様の作業によって構築される。
【0012】
また、今後ますますロボットの普及率が高まり、産業界のみならず一般家庭や日常生活にもロボットが深く浸透していくことが予想される。とりわけ、エンターティンメント性を追求する製品に関しては、コンピュータやコンピュータ・プログラミングに関する高度な知識を持たない一般消費者層がロボットを購入して使用するケースが多いと予想される。このような一般ユーザにとっても、ロボットの動作シーケンスを対話的な処理により比較的容易且つ効率的に作成・編集することを支援するためのツール、すなわちオーサリング・システムを提供することが好ましいと考えられる。
【0013】
【発明が解決しようとする課題】
本発明の目的は、ロボットの所定の動作パターンを記述する一連のコマンド/データの作成・編集を支援することができる、優れたオーサリング・システム及びオーサリング方法を提供することにある。
【0014】
本発明の更なる目的は、ロボットの動作状態を規定する部品の集合を用いて動作パターンの作成・編集を支援することができる、優れたオーサリング・システム及びオーサリング方法を提供することにある。
【0015】
本発明の更なる目的は、各部品をコンピュータ・ディスプレイ上に配置して動作パターンの作成・編集を支援することができる、優れたオーサリング・システム及びオーサリング方法を提供することにある。
【0016】
【課題を解決するための手段及び作用】
本発明は、上記課題を参酌してなされたものであり、その第1の側面は、複数の時系列データの組み合わせからなる多関節構造体のアクションの作成・編集を支援するためのオーサリング・システムであって、
ユーザからコマンドやデータを入力するユーザ入力部と、
アクションを構成する各時系列データを時間軸に沿って同期的に並べた編集領域を提示するユーザ提示部と、
アクションを構成する各時系列データ毎に設けられた、前記ユーザ提示部を介したユーザ入力に基づいて該当する時系列データを作成又は編集する時系列データ編集部と、
を具備することを特徴とするオーサリング・システムである。
【0017】
但し、ここで言う「システム」とは、複数の装置(又は特定の機能を実現する機能モジュール)が論理的に集合した物のことを言い、各装置や機能モジュールが単一の筐体内にあるか否かは特に問わない。
【0018】
多関節構造体は、例えば、複数の関節アクチュエータで構成される2足、4足などの脚式移動ロボットであるが、それ以外の多関節ロボット、あるいは、コンピュータ・グラフィックス処理により関節の動作に従ってアニメーションが生成されるキャラクタであってもよい。
【0019】
また、多関節構造体のアクションを構成する時系列データとしては、例えば、多関節構造体の各関節の時系列的な動作を記述したモーション・データである。モーション・データは、所定のポーズをとった多関節構造体を表現したキーフレームを時間軸上に2以上配置することで各キーフレーム間を滑らかにつなぐような多関節構造体の各関節の時系列的な動作を以って規定することもできる。
【0020】
また、アクションを構成する時系列データの他の例は、アクションの再生と時間的に同期して音声出力されるサウンド・データである。サウンド・データは、MIDI(Musical Instrumental Digital Interface)形式又はWAVE形式で記述することができる。
【0021】
また、アクションを構成する時系列データの他の例は、アクションの再生と時間的に同期して表示出力される表示インジケータすなわちLEDの点灯/消滅動作を記述したインジケータ表示データである。インジケータ表示データは、MIDI形式で記述することができる。
【0022】
前記ユーザ提示部が提示する編集領域は、横方向に設定された時間軸に沿って各時系列データ毎の時系列データ表示チャンネルを縦方向に配列して構成することができる。
【0023】
すなわち、本発明の第1の側面に係るオーサリング・システムによれば、モーション・データ、サウンド・データ、LED動作データなど、移動ロボットのアクションを構成する各時系列データを、2次元的なタイムライン形式のタイム・テーブル上で時間軸に沿って配置して表示することができる。したがって、各時系列データ間での同期を視覚的に確認しながら作成・編集することができる、効率的で直感的に分かり易いアクション編集の作業環境を提供することができる。
【0024】
前記ユーザ提示部が提示する編集領域に、時間軸を実時間表示する目盛で構成される時間ルーラを含めるようにしてもよい。このような場合、各時系列データ・チャンネルと時間軸との同期を視覚的に確認しやすくすることができる。
【0025】
また、前記ユーザ提示部が提示する編集領域は、時間ルーラによって規定される該当時刻を示すための縦方向に走る1以上の時刻表示ラインを備えるようにしてもよい。このような場合、時刻表示ラインを基準にして、各時系列データ・チャンネル間での進行状況を視覚的に確認にしたり、各時系列データ・チャンネル間の同期を視覚的に確認することが容易になる。
【0026】
また、前記ユーザ提示部が提示する編集領域は、時間ルーラによって規定される時間軸上の現在時刻を示すための縦方向に走るカレント時刻表示ラインを備えてもよい。このカレント時刻表示ラインは時間ルーラ上でユーザ操作された位置に移動するようにしてもよい。
【0027】
また、前記ユーザ提示部が提示する編集領域は、現在時刻における多関節構造体の動きをプレビューする表示ウィンドウを備えていてもよい。
【0028】
また、前記ユーザ提示部が提示する編集領域は、時間ルーラが規定する時間軸に従って各キーフレーム又はそのサムネイルを表示するためのキーフレーム・チャンネルを備えていてもよい。このキーフレーム・チャンネル内では、キーフレーム又はそのサムネイルのドラッグ操作に追従して、キーフレームの時刻変更を受容するようにしてもよい。また、キーフレーム・チャンネル内でのキーフレーム又はそのサムネイルのユーザ選択動作に応答して、該当するポーズを編集するポーズ編集画面を起動するようにしてもよい。
【0029】
また、前記ユーザ提示部が提示する編集領域は、時間ルーラが規定する時間軸に沿ってモーションの内容を編集・表示するためのモーション・チャンネルを備えていてもよい。このモーション・チャンネルは、例えば、多関節構造体の各関節毎の時系列的な動作を表す各タイミングチャートを縦方向に配列して構成される。モーション・チャンネル内でのタイミングチャート上のドラッグ操作に追従して、該当する時刻における関節の動作変更を受容するようにしてもよい。
【0030】
また、前記ユーザ提示部が提示する編集領域は、時間ルーラが規定する時間軸に沿ってサウンドの内容を表示するためのサウンド・チャンネルや、時間ルーラが規定する時間軸に沿ってインジケータ表示データの内容を表示するための表示インジケータ・チャンネルを備えていてもよい。
【0031】
また、ユーザ提示部は時間ルーラが規定する時間軸に沿ってサウンドの内容を表示・編集するためのサウンド編集領域をさらに表示するようにしてもよい。
【0032】
サウンド編集領域は、ピアノ鍵盤と時間軸方向の基本グリッドによって構成されるスコア・チャンネルを含んでいてもよい。このような場合、時間軸の基準となる音長と、ピアノ・キーの高さによってスコアが構成され、スコア・チャンネル上では、所望の時刻並びに音階に対応するセル上に音符に相当する色を配色することによって音を編集することができる。また、時間軸に沿って各音毎のベロシティの強さを表示するベロシティ・チャンネルを併せて表示するようにしてもよい。
【0033】
また、ユーザ提示部は時間ルーラが規定する時間軸に沿ってインジケータ表示データの内容を表示・編集するための表示インジケータ編集領域をさらに表示するようにしてもよい。
【0034】
表示インジケータ編集領域は、表示インジケータを配置した部位のリストと時間軸方向の基本グリッドによって構成されスコア・チャンネルを含んでもよい。このような場合、スコア・チャンネル上では、時間軸上に各部位の表示インジケータの点灯状況を表示することによって各部位リスト毎のスコアを編集することができる。
【0035】
また、ユーザ提示部は時系列データ編集部により編集された各時系列データに基づいて生成される多関節構造体のアクションを視覚的に確認するためのプレビュー・ウィンドウをさらに表示するようにしてもよい。
【0036】
このプレビュー・ウィンドウは、モーション・データに基づいて生成される多関節構造体の動きを3次元表示する3Dビュー領域を備えていてもよい。また、プレビュー・ウィンドウは、インジケータ表示データに基づく表示インジケータの動作を他の時系列データのプレビューと同期して表示するための表示インジケータ動作プレビュー領域を備えていてもよい。
【0037】
また、ユーザ提示部は多関節構造体のポーズをGUI操作により編集するためのポーズ・ウィンドウをさらに表示するようにしてもよい。
【0038】
このポーズ・ウィンドウは、多関節構造体を展開平面図上で表示して編集可能部位のユーザ選択を受容する実体指定領域を含んでいてもよい。また、ポーズ・ウィンドウは、多関節構造体の編集可能部位とその設定値をリスト表示するリスト指定領域を含んでいてもよい。また、ポーズ・ウィンドウは、多関節構造体の各編集可能部位の設定部位名称、設定値、設定可能最小値並びに最大値を一覧表示する設定値領域を含んでいてもよい。また、ポーズ・ウィンドウは、3Dグラフィックスにより生成された多関節構造体の全身画像を3D表示するとともに該3D表示上で編集可能部位のユーザ選択を受容する3D表示領域を含んでいてもよい。
【0039】
また、オーサリング・システムは、多関節構造体のアクションを構成する時系列データを外部から入力するデータ入力手段をさらに備えていてもよい。このような場合、ポーズ・ウィンドウは、前記データ入力手段より入力されたデータに基づいて生成されるポーズを表示するようにしてもよい。
【0040】
また、ユーザ提示部は、モーションを構成する1以上のキーフレーム又はそのサムネイルをモーション再生時の時系列に従って配列したモーション・プレビュー・ウィンドウをさらに表示するようにしてもよい。
【0041】
また、本発明の第2の側面は、複数の時系列データの組み合わせからなる多関節構造体のアクションの作成・編集を支援するためのオーサリング方法であって、
アクションを構成する各時系列データを時間軸に沿って同期的に並べた編集領域を提示するユーザ提示ステップと、
アクションを構成する各時系列データ毎に設けられた、前記ユーザ提示ステップによる編集領域を介したユーザ入力に基づいて該当する時系列データを作成又は編集する時系列データ編集ステップと、
を具備することを特徴とするオーサリング方法である。
【0042】
ここで、多関節構造体のアクションを構成する時系列データとしては、例えば、多関節構造体の各関節の時系列的な動作を記述したモーション・データである。モーション・データは、所定のポーズをとった多関節構造体を表現したキーフレームを時間軸上に2以上配置することで各キーフレーム間を滑らかにつなぐような多関節構造体の各関節の時系列的な動作を以って規定することもできる。
【0043】
また、アクションを構成する時系列データの他の例は、アクションの再生と時間的に同期して音声出力されるサウンド・データであり、MIDI形式又はWAVE形式で記述することができる。また、アクションを構成する時系列データの他の例は、アクションの再生と時間的に同期して表示出力される表示インジケータすなわちLEDの点灯/消滅動作を記述したインジケータ表示データであり、MIDI形式で記述することができる。
【0044】
前記ユーザ提示ステップにおいて提示される編集領域は、横方向に設定された時間軸に沿って各時系列データ毎の時系列データ表示チャンネルを縦方向に配列して構成することができる。
【0045】
すなわち、本発明の第2の側面に係るオーサリング方法によれば、モーション・データ、サウンド・データ、LED動作データなど、移動ロボットのアクションを構成する各時系列データを、2次元的なタイムライン形式のタイム・テーブル上で時間軸に沿って配置して表示することができる。したがって、各時系列データ間での同期を視覚的に確認しながら作成・編集することができる、効率的で直感的に分かり易いアクション編集の作業環境を提供することができる。
【0046】
前記ユーザ提示ステップにおいて提示される編集領域に、時間軸を実時間表示する目盛で構成される時間ルーラを含めるようにしてもよい。このような場合、各時系列データ・チャンネルと時間軸との同期を視覚的に確認しやすくすることができる。
【0047】
また、前記ユーザ提示ステップにおいて提示される編集領域は、時間ルーラによって規定される該当時刻を示すための縦方向に走る1以上の時刻表示ラインを備えるようにしてもよい。このような場合、時刻表示ラインを基準にして、各時系列データ・チャンネル間での進行状況を視覚的に確認にしたり、各時系列データ・チャンネル間の同期を視覚的に確認することが容易になる。
【0048】
また、前記ユーザ提示ステップでは、時間ルーラによって規定される時間軸上の現在時刻を示すための縦方向に走るカレント時刻表示ラインを備える編集領域を提示するようにしてもよい。このような場合、該カレント時刻表示ラインを時間ルーラ上でユーザ操作された位置に移動するステップをさらに備えてもよい。
【0049】
また、現在時刻における多関節構造体の動きをプレビューする表示ウィンドウを提示するステップをさらに備えてもよい。
【0050】
また、前記ユーザ提示ステップでは、時間ルーラが規定する時間軸に従って各キーフレーム又はそのサムネイルを表示するためのキーフレーム・チャンネルを備える編集領域を提示するようにしてもよい。このような場合、キーフレーム・チャンネル内でのキーフレーム又はそのサムネイルのドラッグ操作に追従してキーフレームの時刻を変更するステップをさらに含んでいてもよい。また、キーフレーム・チャンネル内でのキーフレーム又はそのサムネイルのユーザ選択動作に応答して、該当するポーズを編集するポーズ編集画面を起動するステップをさらに含んでいてもよい。
【0051】
また、前記ユーザ提示ステップでは、時間ルーラが規定する時間軸に沿ってモーションの内容を編集・表示するためのモーション・チャンネルを備えた編集領域を提示するようにしてもよい。このような場合、多関節構造体の各関節毎の時系列的な動作を表す各タイミングチャートを縦方向に配列してモーション・チャンネルを表示するようにしてもよい。また、モーション・チャンネル内でのタイミングチャート上のドラッグ操作に追従して、該当する時刻における関節の動作を変更するステップをさらに備えていてもよい。
【0052】
また、ユーザ提示ステップでは、時間ルーラが規定する時間軸に沿ってサウンドの内容を表示するためのサウンド・チャンネルを備えた編集領域を提示するようにしてもよい。あるいは、ユーザ提示ステップでは、時間ルーラが規定する時間軸に沿ってインジケータ表示データの内容を表示するための表示インジケータ・チャンネルを備えた編集領域を提示するようにしてもよい。
【0053】
また、オーサリング方法は、時間ルーラが規定する時間軸に沿ってサウンドの内容を表示・編集するためのサウンド編集領域を表示するステップをさらに備えていてもよい。
【0054】
サウンド編集領域は、例えば、ピアノ鍵盤と時間軸方向の基本グリッドによって構成されるスコア・チャンネルを含んでいてもよい。このような場合、時間軸の基準となる音長と、ピアノ・キーの高さによってスコアが構成され、該スコア・チャンネル上では、所望の時刻並びに音階に対応するセル上に音符に相当する色を配色することによって音を編集することができる。また、サウンド編集領域は、時間軸に沿って各音毎のベロシティの強さを表示するベロシティ・チャンネルを含んでいてもよい。
【0055】
また、オーサリング方法は、時間ルーラが規定する時間軸に沿ってインジケータ表示データの内容を表示・編集するための表示インジケータ編集領域を表示するステップをさらに備えていてもよい。
【0056】
表示インジケータ編集領域は、例えば、表示インジケータを配置した部位のリストと時間軸方向の基本グリッドによって構成されスコア・チャンネルを含んでいてもよい。このような場合、スコア・チャンネル上で、時間軸上に各部位の表示インジケータの点灯状況を表示することによって各部位リスト毎のスコアを編集することができる。
【0057】
また、オーサリング方法は、時系列データ編集ステップにおいて編集された各時系列データに基づいて生成される多関節構造体のアクションを視覚的に確認するためのプレビュー・ウィンドウを表示するステップをさらに備えていてもよい。
【0058】
このプレビュー・ウィンドウを表示するステップでは、モーション・データに基づいて生成される多関節構造体の動きを3Dビュー領域に3次元表示したり、あるいは、表示インジケータ動作プレビュー領域上でインジケータ表示データに基づく表示インジケータの動作を他の時系列データのプレビューと同期して表示するようにしてもよい。
【0059】
また、オーサリング方法は、多関節構造体のポーズをGUI操作により編集するためのポーズ・ウィンドウを表示するステップをさらに備えていてもよい。
【0060】
このポーズ・ウィンドウは、多関節構造体を展開平面図上で表示して編集可能部位のユーザ選択を受容する実体指定領域や、多関節構造体の編集可能部位とその設定値をリスト表示するリスト指定領域、多関節構造体の各編集可能部位の設定部位名称、設定値、設定可能最小値並びに最大値を一覧表示する設定値領域、3Dグラフィックスにより生成された多関節構造体の全身画像を3D表示するとともに該3D表示上で編集可能部位のユーザ選択を受容する3D表示領域などを含んでいてもよい。
【0061】
また、オーサリング方法は、多関節構造体のアクションを構成する時系列データを外部から入力するデータ入力ステップをさらに備えていてもよい。このような場合、前記データ入力ステップにおいて入力されたデータに基づいて生成されるポーズをポーズ・ウィンドウに表示するようにしてもよい。
【0062】
また、オーサリング方法は、モーションを構成する1以上のキーフレーム又はそのサムネイルをモーション再生時の時系列に従って配列したモーション・プレビュー・ウィンドウを表示するステップをさらに備えていてもよい。
【0063】
また、本発明の第3の側面は、複数の時系列データの組み合わせからなる多関節構造体のアクションの作成・編集を支援するための処理をコンピュータ・システム上で実行するように記述されたコンピュータ・ソフトウェアをコンピュータ可読形式で物理的に格納した記憶媒体であって、前記コンピュータ・ソフトウェアは、
アクションを構成する各時系列データを時間軸に沿って同期的に並べた編集領域を提示するユーザ提示ステップと、
アクションを構成する各時系列データ毎に設けられた、前記ユーザ提示ステップによる編集領域を介したユーザ入力に基づいて該当する時系列データを作成又は編集する時系列データ編集ステップと、
を具備することを特徴とする記憶媒体である。
【0064】
本発明の第3の側面に係る記憶媒体は、例えば、様々なプログラム・コードを実行可能な汎用性のコンピュータ・システムに対して、コンピュータ・ソフトウェアをコンピュータ可読な形式で物理的に提供する媒体である。このような媒体は、例えば、CD(Compact Disc)やFD(Floppy Disc(登録商標))、MO(Magneto−Optical disc)などの着脱自在で可搬性の記憶媒体である。あるいは、ネットワーク(ネットワークは無線、有線の区別を問わない)などの伝送媒体などを経由してコンピュータ・ソフトウェアを特定のコンピュータ・システムにコンピュータ可読形式で提供することも技術的に可能である。
【0065】
このような記憶媒体は、コンピュータ・システム上で所定のコンピュータ・ソフトウェアの機能を実現するための、コンピュータ・ソフトウェアと記憶媒体との構造上又は機能上の協働的関係を定義したものである。換言すれば、本発明の第3の側面に係る記憶媒体を介して所定のコンピュータ・ソフトウェアをコンピュータ・システムにインストールすることによって、コンピュータ・システム上では協働的作用が発揮され、本発明の第1及び第2の各側面に係るオーサリング・システム及びオーサリング方法と同様の作用効果を得ることができる。
【0066】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。
【0067】
【発明の実施の形態】
以下、図面を参照しながら本発明の実施例を詳解する。
【0068】
A.ロボットの構成
図1には、本発明を実施に供される、四肢による脚式歩行を行う移動ロボット1の外観構成を示している。図示の通り、該ロボット1は、四肢を有する動物の形状や構造をモデルにして構成された多関節型の移動ロボットである。とりわけ本実施例の移動ロボット1は、愛玩動物の代表例であるイヌの形状及び構造を模してデザインされたペット型ロボットという側面を有し、例えば人間の住環境において人間と共存するとともに、ユーザ操作に応答した動作表現することができる。
【0069】
移動ロボット1は、胴体部ユニット2と、頭部ユニット3と、尻尾4と、四肢すなわち脚部ユニット6A〜6Dで構成される。
【0070】
頭部ユニット3は、ロール、ピッチ及びヨーの各軸方向(図示)の自由度を持つ首関節7を介して、胴体部ユニット2の略前上端に配設されている。また、頭部ユニット3には、イヌの「目」に相当するCCD(Charge Coupled Device:電荷結合素子)カメラ15と、「耳」に相当するマイクロフォン16と、「口」に相当するスピーカ17と、触感に相当するタッチセンサ18と、複数のLEDインジケータ19が搭載されている。これら以外にも、生体の五感を構成するセンサを含んでいても構わない。
【0071】
尻尾4は、ロール及びピッチ軸の自由度を持つ尻尾関節8を介して、胴体部ユニット2の略後上端に湾曲若しくは揺動自在に取り付けられている。
【0072】
脚部ユニット6A及び6Bは前足を構成し、脚部ユニット6C及び6Dは後足を構成する。各脚部ユニット6A〜6Dは、それぞれ、大腿部ユニット9A〜9D及び脛部ユニット10A〜10Dの組み合わせで構成され、胴体部ユニット2の底面の前後左右の各隅部に取り付けられている。大腿部ユニット9A〜9Dは、ロール、ピッチ、ヨーの各軸の自由度を持つ股関節11A〜11Dによって、胴体部ユニット2の各々の所定部位に連結されている。また、大腿部ユニット9A〜9Dと脛部ユニット10A〜10Dの間は、ロール及びピッチ軸の自由度を持つ膝関節12A〜12Dによって連結されている。
【0073】
図示のように構成された脚式移動ロボット1は、後述する制御部からの指令により各関節アクチュエータを駆動することによって、例えば、頭部ユニット3を上下左右に振らせたり、尻尾4を振らせたり、各足部ユニット6A〜6Dを同期協調的に駆動させて歩行や走行などの動作を実現することができる。
【0074】
なお、移動ロボット1の関節自由度は、実際には各軸毎に配備され関節アクチュエータ(図示しない)の回転駆動によって提供される。また、脚式移動ロボット1が持つ関節自由度の個数は任意であり、本発明の要旨を限定するものではない。
【0075】
図2には、移動ロボット1の電気・制御系統の構成図を模式的に示している。同図に示すように、移動ロボット1は、全体の動作の統括的制御やその他のデータ処理を行う制御部20と、入出力部40と、駆動部50と、電源部60とで構成される。以下、各部について説明する。
【0076】
入出力部40は、入力部として移動ロボット1の目に相当するCCDカメラ15や、耳に相当するマイクロフォン16、触感に相当するタッチセンサ18、あるいは五感に相当するその他の各種のセンサを含む。また、出力部として、口に相当するスピーカ17、あるいは点滅の組み合わせや点灯のタイミングにより顔の表情を形成するLEDインジケータ19などを装備している。これら出力部は、脚などによる機械運動パターン以外の形式で移動ロボット1からのユーザ・フィードバックを表現することができる。
【0077】
移動ロボット1は、カメラ15を含むことで、作業空間上に存在する任意の物体の形状や色彩を認識することができる。また、移動ロボット1は、カメラのような視覚手段の他に、赤外線、音波、超音波、電波などの発信波を受信する受信装置をさらに備えていてもよい。この場合、各伝送波を検知するセンサ出力に基づいて発信源からの位置や向きを計測することができる。
【0078】
駆動部50は、制御部20が指令する所定の運動パターンに従って移動ロボット1の機械運動を実現する機能ブロックであり、首関節7、尻尾関節8、股関節11A〜11D、膝関節12A〜12Dなどのそれぞれの関節におけるロール、ピッチ、ヨーなど各軸毎に設けられた駆動ユニットで構成される。図示の例では、移動ロボット1はn個の関節自由度を有し、したがって駆動部50はn個の駆動ユニットで構成される。各駆動ユニットは、所定軸回りの回転動作を行うモータ51と、モータ51の回転位置を検出するエンコーダ52と、エンコーダ52の出力に基づいてモータ51の回転位置や回転速度を適応的に制御するドライバ53の組み合わせで構成される。
【0079】
電源部60は、その字義通り、移動ロボット1内の各電気回路等に対して給電を行う機能モジュールである。本実施例に係る移動ロボット1は、バッテリを用いた自律駆動式であり、電源部60は、充電バッテリ61と、充電バッテリ61の充放電状態を管理する充放電制御部62とで構成される。
【0080】
充電バッテリ61は、例えば、複数本のニッケル・カドミウム電池セルをカートリッジ式にパッケージ化した「バッテリ・パック」の形態で構成される。
【0081】
また、充放電制御部62は、バッテリ61の端子電圧や充電/放電電流量、バッテリ61の周囲温度などを測定することでバッテリ61の残存容量を把握し、充電の開始時期や終了時期などを決定するようになっている。充放電制御部62が決定する充電の開始及び終了時期は制御部20に通知され、移動ロボット1が充電オペレーションを開始及び終了するためのトリガとなる。
【0082】
制御部20は、「頭脳」に相当し、例えば移動ロボット1の頭部ユニット3あるいは胴体部ユニット2に搭載される。
【0083】
図3には、制御部20の構成をさらに詳細に図解している。同図に示すように、制御部20は、メイン・コントローラとしてのCPU(Central Processing Unit)21が、メモリその他の各回路コンポーネントや周辺機器とバス接続された構成となっている。バス27は、データ・バス、アドレス・バス、コントロール・バスなどを含む共通信号伝送路である。バス27上の各装置にはそれぞれに固有のアドレス(メモリ・アドレス又はI/Oアドレス)が割り当てられており、CPU21はアドレス指定することでバス28上の特定の装置と通信することができる。
【0084】
RAM(Random Access Memory)22は、DRAM(Dynamic RAM)などの揮発性メモリで構成された書き込み可能メモリであり、CPU21が実行するプログラム・コードをロードしたり、実行プログラムによる作業データの一時的な保存のために使用される。
【0085】
ROM(Read Only Memory)23は、プログラムやデータを恒久的に格納する読み出し専用メモリである。ROM23に格納されるプログラム・コードには、移動ロボット1の電源投入時に実行する自己診断テスト・プログラムや、移動ロボット1の動作を規定する動作制御プログラムなどが挙げられる。
【0086】
ロボット1の制御プログラムには、カメラ15やマイクロフォン16などのセンサ入力を処理する「センサ入力処理プログラム」、センサ入力と所定の動作モデルとに基づいて移動ロボット1の行動すなわち運動パターンを生成する「行動命令プログラム」、生成された運動パターンに従って各モータの駆動やスピーカ17の音声出力などを制御する「駆動制御プログラム」などが含まれる。生成される運動パターンには、通常の歩行運動や走行運動以外に、「お手」、「お預け」、「お座り」や、「ワンワン」などの動物の鳴き声の発声などエンターティンメント性の高い動作を含んでいてもよい。
【0087】
また、ロボット1のその他の制御プログラムとして、オーサリング・ツールを用いて作成・編集された各種の動作シーケンス・プログラムが含まれる。オーサリング・ツールは、例えばロボット1外部に設置されたコンピュータ・システム上で所定のソフトウェア実行環境下で起動する。但し、オーサリング・ツール並びに該ツール上で作成・編集されるプログラムついては後に詳解する。
【0088】
不揮発性メモリ24は、例えばEEPROM(Electrically Erasable and Programmable ROM)のように、電気的に消去再書き込みが可能なメモリ素子で構成され、逐次更新すべきデータを不揮発的に保持するために使用される。逐次更新すべきデータには、例えば、製造番号や暗号鍵などのセキュリティ情報や、移動ロボット1の行動パターンを規定する各種モデルなどが挙げられる。
【0089】
インターフェース25は、制御部20外の機器と相互接続し、データ交換を可能にするための装置である。インターフェース25は、例えば、カメラ15やマイクロフォン16、スピーカ17との間でデータ入出力を行う。また、インターフェース25は、駆動部50内の各ドライバ53−1…との間でデータやコマンドの入出力を行う。
【0090】
また、インターフェース25は、RS(Recommended Standard)−232Cなどのシリアル・インターフェース、IEEE(Institute of Electrical and electronics Engineers)1284などのパラレル・インターフェース、USB(Universal Serial Bus)インターフェース、i−Link(IEEE1394)インターフェース、SCSI(Small Computer System Interface)インターフェース、メモリ・カード・インターフェースなどのような、コンピュータの周辺機器接続用の汎用インターフェースを備え、ローカル接続された外部機器との間でプログラムやデータの移動を行うようにしてもよい。
【0091】
また、インターフェース25の他の例として、赤外線通信(IrDA)インターフェースを備え、外部機器と無線通信を行うようにしてもよい。
【0092】
さらに、制御部20は、無線通信インターフェース26ネットワーク・インターフェース・カード(NIC)27を含み、"bluetooth"や".11B"のような近接無線通信、あるいはLAN(Local Area Network:例えばEthernet)やインターネットを経由して、外部のホスト・コンピュータ100とデータ通信を行うことができる。無線通信のための送受信部は、例えば頭部ユニット2や尻尾3など、移動ロボット1本体の先端部に設置されることが受信感度の観点から好ましい。
【0093】
このような移動ロボット1とホストコンピュータ100間におけるデータ通信の1つの目的は、ロボット1外部(すなわち遠隔)のコンピュータ資源を用いて、移動ロボット1の複雑な動作制御を演算したり、リモート・コントロールすることである。
【0094】
また、該データ通信の他の目的は、動作モデルやその他のプログラム・コードなどロボット1の動作制御に必要なデータやプログラムを、ネットワーク経由で遠隔の装置から移動ロボット1に供給することにある。
【0095】
また、該データ通信の他の目的は、ホスト・コンピュータ100上でオーサリング・ツール(後述)を用いて作成・編集したロボット動作制御用プログラムのダウンロードや、このような動作制御用プログラムのホスト・コンピュータ100とロボット1との協働的動作によるリアルタイムのデバッグ処理である。
【0096】
また、該データ通信の他の目的は、オペレータが移動ロボット1に対して直接教示したポーズを規定する各関節アクチュエータの角度データなどの動作設定値を、ホスト・コンピュータ100側に転送することである。ホスト・コンピュータ100上では、このような各関節アクチュエータの角度データで規定される「ポーズ」を、ポーズ・ウィンドウ上で編集してモーションのためのキーフレームを作成することができる。要するに、移動ロボット1から供給されるポーズは、例えばアクションの編集に利用することができる(後述)。
【0097】
制御部20は、テンキー及び/又はアルファベット・キーからなるキーボード29を備えておいてもよい。キーボード29は、ロボット1の作業現場においてユーザが直接的なコマンド入力のために使用する他、パスワードなどの所有者認証情報の入力に用いられる。
【0098】
本実施例に係る移動ロボット1は、制御部20が所定の動作制御プログラムを実行することによって、自律的(すなわち人手が介在しない)な動作を行うことができる。また、画像入力(すなわちカメラ15)、音声入力(すなわちマイク16)、タッチセンサ18などの人間や動物の五感に相当する入力装置を備えるとともに、これら外部入力に応答した理性的又は感情的な行動を実行するインテリジェンスを備えている。
【0099】
図1〜図3に示すように構成された移動ロボット1は、以下のような特徴がある。すなわち、
【0100】
(1)ある姿勢から他の姿勢へ遷移するように指示されたとき、各姿勢間を直接に遷移せず、あらかじめ用意された無理のない中間的な姿勢を経由して遷移することができる。
(2)姿勢遷移で任意の姿勢に到達したときに通知を受け取ることができる。
(3)頭部、足部、尻尾部などの各ユニット単位で姿勢を独立して管理しながら姿勢制御することができる。すなわち、ロボット1の全体の姿勢とは別に各ユニット毎に姿勢を管理することができる。
(4)動作命令の動作の詳細を示すためのパラメータを渡すことができる。
【0101】
図3に示すように、本実施例に係る移動ロボット1は、ネットワーク経由で外部のホスト・コンピュータ100と相互接続されている。あるいは、ホスト・コンピュータ100とは、無線通信(例えば、luetooth(登録商標)IEEE.11bなどの近距離無線データ通信)やその他の通信手段によって接続されていてもよい。
【0102】
ホスト・コンピュータ100上では、所定のソフトウェア実行環境が構築され、該環境下では、オーサリング・ツールを起動して、ロボット1の動作シーケンスを対話的な処理により比較的容易且つ効率的に作成・編集することができる。但し、オーサリング・ツールの詳細については後述する。
【0103】
図4には、ホスト・コンピュータ100のハードウェア構成例を模式的に図解している。以下、コンピュータ100内の各部について説明する。
【0104】
システム100のメイン・コントローラであるCPU(Central Processing Unit)101は、オペレーティング・システム(OS)の制御下で、各種のアプリケーションを実行するようになっている。OSは、より好ましくはGUI(Graphical User Interface)環境を提供するが、例えば、UNIX(登録商標)、又は、米Microsoft社のWindows(登録商標)98/NTでよい。
【0105】
図示の通り、CPU101は、バス107によって他の機器類(後述)と相互接続されている。バス107上の各機器にはそれぞれ固有のメモリ・アドレス又はI/Oアドレスが付与されており、CPU101はこれらアドレスによって機器アクセスが可能となっている。バス107は、データ・バス、アドレス・バス、コントロール・バスを含んだ共通信号伝送路であるが、その一例はPCI(Peripheral Component Interconnect)バスである。
【0106】
メモリ102は、プロセッサ101において実行されるプログラム・コードを格納したり、実行中の作業データを一時保管するために使用される記憶装置である。同図に示すメモリ102は、不揮発及び揮発メモリ双方を含むものと理解されたい。
【0107】
ディスプレイ・コントローラ103は、CPU101が発行する描画命令を実際に処理するための専用コントローラであり、例えばSVGA(Super Video Graphic Array)又はXGA(eXtended Graphic Array)相当のビットマップ描画機能をサポートする。ディスプレイ・コントローラ103において処理された描画データは、例えばフレーム・バッファ(図示しない)に一旦書き込まれた後、表示装置111に画面出力される。表示装置111は、例えば、CRT(Cathode Ray Tube)ディスプレイや、液晶表示ディスプレイ(Liquid Crystal Display)などである。
【0108】
入力機器インターフェース104は、キーボード112やマウス113などのユーザ入力機器をシステム100に接続するための装置である。入力機器インターフェース104は、キーボード112によるキー入力又はマウス113を介した座標指示入力に応答して、CPU101に対して割り込みを発生する。
【0109】
ネットワーク・インターフェース105は、Ethernet(登録商標)などの所定の通信プロトコルに従って、システム100をLAN(Local Area Network)などのネットワークに接続したり、あるいはbluetoothや.11Bのような近距離無線データ通信に接続することができる。ネットワーク・インターフェース105は、一般に、LANアダプタ・カードの形態で提供され、マザーボード(図示しない)上のPCIバス・スロット装着して用いられる。
【0110】
図3に示す例では、ホスト・コンピュータ100は、無線データ通信やネットワーク経由でロボット1と相互接続されているが、勿論、他の通信手段やデータ移動手段によって両者が接続されていてもよい。例えば、メモリ・カード(メモリ・スティック)のような記録メディアを介してデータの交換や移動を行うようにしてもよい。
【0111】
またネットワーク上では、複数のホスト・コンピュータ(図示しない)がトランスペアレントな状態で接続され、分散コンピューティング環境が構築されている。ネットワーク上では、ソフトウェア・プログラムやデータ・コンテンツなどの配信が行われる。例えば、本実施例に係るオーサリング・ツールや、該オーサリング・ツールで作成・編集したロボット用行動シーケンス・プログラム(さらには、行動シーケンスとなるアクション・ファイル、モーション・ファイル、サウンド・ファイル、LED動作ファイル)などを、ネットワーク経由で配信することができる。また、このようなプログラム/データのネットワーク配信サービスを有料又は無料で行ってもよい。
【0112】
外部機器インターフェース106は、ハード・ディスク・ドライブ(HDD)114やメディア・ドライブ115などの外部装置をシステム100に接続するための装置である。外部機器インターフェース106は、例えば、IDE(Integrated Drive Electronics)やSCSI(Small Computer System Interface)などのインターフェース規格に準拠する。
【0113】
HDD114は、記憶担体としての磁気ディスクを固定的に搭載した外部記憶装置であり(周知)、記憶容量やデータ転送速度などの点で他の外部記憶装置よりも優れている。ソフトウェア・プログラムを実行可能な状態でHDD116上に置くことをプログラムのシステムへの「インストール」と呼ぶ。通常、HDD114には、プロセッサ511が実行すべきオペレーティング・システムのプログラム・コードや、アプリケーション・プログラム、デバイス・ドライバなどが不揮発的に格納されている。例えば、本実施例に係るオーサリング・ツールや、該オーサリング・ツールを用いて作成・編集したロボット用行動シーケンス・プログラムを、HDD114上にインストールすることができる。
【0114】
また、メディア・ドライブ115は、CD(Compact Disc)やMO(Magneto-Optical disc)、DVD(Digital Versatile Disc)などの可搬型メディアを装填して、データ記録面にアクセスするための装置である。可搬型メディアは、主として、ソフトウェア・プログラムやデータ・ファイルなどをコンピュータ可読形式のデータとしてバックアップすることや、これらをシステム間で移動(すなわち販売・流通・配布を含む)する目的で使用される。例えば、本実施例に係るオーサリング・ツールや、該オーサリング・ツールを用いて作成したロボット用行動シーケンス・プログラム(さらには、行動シーケンスとなるアクション・ファイル、モーション・ファイル、サウンド・ファイル、LED動作ファイル)などを、これら可搬型メディアを利用して機器間で物理的に流通・配布することができる。
【0115】
なお、図4に示すようなホスト・コンピュータ100の一例は、米IBM社のパーソナル・コンピュータ"PC/AT(Personal Computer/Advanced Technology)"の互換機又は後継機である。勿論、他のアーキテクチャを備えた計算機システムを本実施例に係るホスト・コンピュータ100として適用することも可能である。
【0116】
B.オーサリング システムの構成
本実施例では、ロボット1の所定の動作パターンを記述する一連のコマンド/データからなる動作制御プログラムを、ホスト・コンピュータ100上で起動したオーサリング・ツールを用いて作成・編集することができる。また、このオーサリング・ツールを用いて作成・編集した動作制御プログラムを、例えばbluetoothや.11Bなどの無線通信手段を用いてロボット1側に転送して、ホスト・コンピュータ100とロボット1との協働的動作によりデバッグ処理を行うようになっている。すなわち、ホスト・コンピュータ100とロボット1間の有機的な結合により、移動ロボット1の動作制御プログラムの作成・編集を支援するためのオーサリング・システムが構築されている訳である。
【0117】
図5には、オーサリング・システムの全体構成を模式的に図解している。
【0118】
ホスト・コンピュータ100側では、ユーザは、オーサリング・ツールが提供するGUI(Graphical User Interface)画面を用いてマウス操作により移動ロボット1の規定のシナリオを作成・編集することができる。シナリオ作成用のGUI画面並びに該GUI画面上での編集操作の詳細については後述する。あるいは、ユーザは、通常のテキスト・エディタなどを用いて、スクリプト形式(例えばC言語などの高級言語形式)でロボット1の動作制御プログラムを作成・編集することができる。
【0119】
オーサリング・ツールは、ユーザがGUI画面上で作成・編集したシナリオや、テキスト・エディタ上で作成・編集したスクリプト形式の動作制御プログラムを、"RCODE"と呼ばれるアセンブラに類似する形式のニーモニック・コードに変換する。
【0120】
ここで言うRCODEとは、簡単なコマンドでロボット1を制御するために策定されたプログラム言語であり、"IF"や"GO"などの基本的な制御構造も備えているので、ロボット制御用最低水準スクリプト言語としても使用することができる。
【0121】
ホスト・コンピュータ100上で作成・編集されたRCODE動作制御プログラムは、例えば、メモリ・スティックなどのメディアを利用してロボット1側に移動することができる。また、RCODE動作制御プログラムのデバッグ時には、RCODEプログラムを1行ごとに取り出して、暗号化して、bluetoothや.11Bなどの無線通信手段を利用してロボット1側に逐次転送するようになっている。
【0122】
他方、ロボット1側では、RCODEなどで記述された動作制御プログラムの実行及びデバッグ環境として、インタープリタ/デバッガと、ミドルウェアと、ドライバと、オペレーティング・システム(OS)とを備えている。
【0123】
インタープリタは、RCODE形式で記述されたプログラムを1行ずつ読み込んで解釈して実行する高水準言語プログラムである。但し、デバッグ時などにおいて、ホスト・コンピュータ100側から暗号化された形式でRCODEプログラムが送信される場合には、インタープリタは、これを一旦復号化してから解釈・実行を行う必要がある。
【0124】
デバッガは、RCODEプログラム中の誤り(バグ)を発見して、修正する作業を支援するプログラムである。すなわち、デバッガによれば、プログラムを指定した行で実行を止めたり、そのときのメモリや変数の内容を参照することができる。
【0125】
ミドルウェアは、ロボット1の基本的な機能を提供するソフトウェア・モジュールの集まりであり、各モジュールの構成はロボット1の機械的・電気的な特性や仕様、形状などハードウェア属性の影響を受ける。ミドルウェアは、機能的に、認識系のミドルウェアと出力系のミドルウェアに大別される。
【0126】
認識系のミドルウェアは、画像データや音声データ、その他のセンサから得られる検出データなど、ハードウェアからの生データを仮想ロボット経由で受け取ってこれらを処理するエンジンである。すなわち、各種入力情報に基づき、音声認識、距離検出、姿勢検出、接触、動き検出、色認識などの処理を行い、認識結果を得る。認識結果は、上位のアプリケーション層(行動シーケンス・プログラム)に通知される。
【0127】
一方、出力系のミドルウェアでは、歩行、動きの再生、出力音の合成、LEDインジケータの点滅制御などの機能を提供する。すなわち、アプリケーション層において立案された行動計画を受け取って、ロボット1の各機能毎にロボットの各ジョイントのサーボ指令値や出力音、出力光(LED)、出力音声などを生成して、ロボット1上で実演する。
【0128】
ドライバは、各関節アクチュエータやその他のハードウェアの操作を行うためのプログラム・コードである。
【0129】
本実施例では、ミドルウェア並びにドライバは、オブジェクト指向プログラムによって実装されている。オブジェクト指向に基づくソフトウェアは、基本的に、データとそのデータに対する処理手続きとを一体化させた「オブジェクト」というモジュール単位で扱われる。また、必要に応じて複数のオブジェクトを作成したり組み合わせることで1つのソフトウェアが完成する。一般に、オブジェクト指向プログラミングによれば、ソフトウェアの開発と保守が効率化されると考えられている。
【0130】
オペレーティング・システム(OS)は、これらオブジェクト間のデータ通信の管理や、その他のプログラム実行に関する制御を行う。OSもオブジェクト指向プログラムにより実装される。
【0131】
C.オーサリング ツールを用いたロボット用動作プログラムの作成 編集
本実施例に係るオーサリング・ツールを用いて作成された動作シナリオは、「ビヘイビア」の作成・編集と、「アクション」の作成・編集とで成り立ち、その成果物は「プロジェクト」と呼ばれる。プロジェクトには、移動ロボット1のコンフィギュレーション(CPC:Configured Peripheral Component)、すなわち胴体、頭部、脚部などの物理コンポーネントの組み合わせからなるハードウェア構成情報が設定されている。
【0132】
プロジェクトは、ビヘイビア・ファイルと、アクション・ファイルと、モーション・ファイルと、サウンド・ファイルと、LED動作ファイルとで構成される。ビヘイビアは、アクションの組み合わせによって構成される。また、アクションは、モーションとサウンドとLED動作などの各コンテンツを構成要素とする。
【0133】
モーション・ファイルは、移動ロボット1の各関節アクチュエータの動作を規定するファイルである。本実施例では、GUI編集画面上で、移動ロボット1に所望のポーズをとらせた様子を描写した2以上のキーフレームを時系列的に配置することによって、モーションを規定することができる。但し、GUI編集画面上におけるモーションの編集作業については後に詳解する。
【0134】
サウンド・ファイルは、スピーカ17を介して音声出力するための音響データであり、例えばMIDI(Musical Instrumental Digital Interface)やWAVE形式のファイルとして構成される。例えば、MIDI形式で記述された音響ファイルは、音そのものの情報としてではなく、大きさ、長さ、音色や効果といった演奏情報を数値データに変換して音楽を表現するようになっている。本実施例では、GUI編集画面を介して、音響を構成するMIDI形式の各数値データを操作することによって演奏情報を編集することができるが、この点については後に詳解する。
【0135】
LED動作ファイルは、複数のLEDインジケータ19の点灯の組み合わせや点滅のタイミングを規定するためのデータであり、顔の表情を形成することを目的として利用される。本実施例では、LED動作ファイルはMIDI形式で記述され、GUI編集画面を介してLED動作ファイルを自在に編集することができるようになっている。但し、GUI編集画面上における編集作業については後に詳解する。
【0136】
モーションと、サウンドと、LED動作は、アクションの構成要素であり、時間の経過に従って変化する時系列データである。アクションを正確に再生するためには、これら各構成要素は時間的に同期していなければならない。本実施例では、GUI編集画面上で、モーションとサウンドとLEDの点灯が互いに時間軸上で同期するように各ファイルを編集することができるが、この点については後に詳解する。
【0137】
アクションは、時間軸上で同期がとられたモーション・ファイルとサウンド・ファイルとLED動作ファイルという各コンテンツを統合することによって構成される。1つのアクション・ファイルは、概ね10秒程度で再生されるコマンド(「セマンティックス」とも呼ぶ)である。本実施例では、後述するように、GUI編集画面上でタイムラインを利用することによって、各コンテンツ間の同期を用意にとることができるアクション編集のための作業環境が提供される。また、各コンテンツを個々のデータとして処理することができる他、他のコンテンツと統合した形式すなわちアクションの形式でも扱うことができる。
【0138】
ビヘイビアとは、2以上のコマンドすなわちアクションを並べていくことにより構成される、移動ロボット1の振る舞いを規定するファイルである。アクションはスタートからエンドまで一方向で再生される。これに対して、ビヘイビアは、アクションを再生する順序を規定することができる。さらに、条件や確率に基づいた分岐や、複数のコマンドすなわちアクションをボックス化してサブルーチンを定義することができる。したがって、ビヘイビアは、アクションに比し、移動ロボット1のより高度で複雑な行動シーケンスを記述することができる。
【0139】
図29には、オーサリング・システムの機能構成を模式的に示している。同図に示すように、本実施例に係るオーサリング・システムは、特にアクションの編集向けにデザインされたものであり、アクション編集部と、キーフレーム編集部と、モーション編集部と、サウンド編集部と、LED動作編集部と、これら各機能モジュールによるユーザの編集作業をGUI画面による対話形式で実現するユーザ・インターフェース制御部とで構成される。
【0140】
アクション編集部は、モーション・ファイルとサウンド・ファイルとLED動作ファイルとを時間軸上で同期がとられる形式で編集を行うための機能モジュールである。アクション編集部は、ユーザ・インターフェース制御部を介して、移動ロボット1の時間軸に沿った関節動作(モーション)と、サウンド及びLED動作のタイミングを設定するためのアクション編集ウィンドウをユーザに提示する。アクション編集ウィンドウは、各種のファイルを時間軸上で設定するためのタイムライン形式のテーブルからなる編集領域を備えているが、アクション編集ウィンドウの詳細については後述に譲る。
【0141】
キーフレーム編集部は、キーフレームすなわちモーションを実行する移動ロボットの該当する時刻におけるポーズを描写した画像フレームを編集するための機能モジュールである。キーフレーム編集部は、アクション編集部に対するユーザ操作に応答して呼び出され、アクション編集ウィンドウ上で開かれるキーフレーム・チャンネルを介してユーザによる編集作業を受容する。キーフレーム・チャンネルでは、時間軸上の該当する各場所にキーフレームを表すサムネイルが置かれるが、キーフレーム・チャンネルの詳細については後述に譲る。
【0142】
モーション編集部は、モーションすなわち移動ロボットを構成する各関節アクチュエータの時系列的な動作を編集するための機能モジュールである。モーション編集部は、アクション編集部に対するユーザ操作に応答して呼び出され、アクション編集ウィンドウ上で開かれるモーション・チャンネルを介してユーザによる編集作業を受容する。モーション・チャンネルでは、各関節アクチュエータの時系列的な動作を記述する各タイミングチャートが、生体モデルに従ってツリー状にリストアップ(ツリー・ビュー)されるが、モーション・チャンネルの詳細については後述に譲る。
【0143】
また、モーション編集部は、3D表示画面上で移動ロボット1のポーズを編集するためのポーズ・ウィンドウや、仕上がったモーションをプレビューするためのモーション・プレビューワを、ユーザ・インターフェース部を介してユーザに提示する。ポーズ・ウィンドウやモーション・プレビューワの詳細については後述に譲る。
【0144】
サウンド編集部は、アクションの構成要素の1つであるサウンドの詳細を設定するための機能モジュールである。本実施例では、サウンドは、MIDI形式又はWAVE形式で扱われる。サウンド編集部は、ユーザ・インターフェース制御部を介して、時間軸上に沿ってサウンドの詳細を設定するためのサウンド詳細ウィンドウをユーザに提示する。サウンド詳細ウィンドウは、横方向の時間軸と、縦方向のチャンネルで構成される2次元のタイムライン形式のテーブルからなる編集領域を備えている。但し、サウンド詳細ウィンドウの詳細については後述に譲る。サウンド詳細ウィンドウ上で設定された内容は、アクション編集ウィンドウ内のサウンド・チャンネル(後述)上の表示に利用される。
【0145】
LED動作編集部は、アクションの構成要素の1つであるLED動作の詳細を設定するための機能モジュールである。本実施例では、LED動作は、MIDI形式で扱われる。LED動作編集部は、ユーザ・インターフェース制御部を介して、時間軸上に沿ってLED動作の詳細を設定するためのLED詳細ウィンドウをユーザに提示する。LED詳細ウィンドウは、横方向の時間軸と、縦方向のチャンネルで構成される2次元のタイムライン形式のテーブルからなる編集領域を備えているが、LED詳細ウィンドウの詳細については後述に譲る。LED詳細ウィンドウ上で設定された内容は、アクション編集ウィンドウ内のLED動作チャンネル(後述)上の表示に利用される。
【0146】
ユーザ・インターフェース制御部は、プロジェクト編集時にはプロジェクト・ウィンドウをユーザに提示するようになっている。
【0147】
また、ユーザ・インターフェース制御部は、各編集ウィンドウを介したユーザ指示に応答して、ビヘイビア・ファイル、アクション・ファイル、モーション・ファイル,サウンド・ファイル、LED動作ファイルを管理する各ファイル・システム(又はデータベース)にアクセスできるようになっている。
【0148】
次いで、本実施例に係るオーサリング・システム上で、ユーザが移動ロボット1の動作シナリオを作成・編集するための処理手順について詳解する。
【0149】
プロジェクト編集時には、図6に示すような「プロジェクト・ウィンドウ」が表示される。プロジェクト・ウィンドウは、タイトル・バーと、メニュー・バーと、ツール・バーと、リスト表示領域を含む。プロジェクト・ウィンドウは、例えばSDI(Single Document Interface)メイン・ウィンドウとして構成される。(SDIは、1つのドキュメントを1つのウインドウで開くようにしたタイプのユーザ・インターフェースである。)
【0150】
図示の通り、プロジェクト・ウィンドウ内には、ビヘイビアの編集並びにアクションの編集に使用される、ビヘイビア・ファイル、アクション・ファイル、モーション・ファイル、サウンド・ファイル、LED動作ファイルなどの各ファイルのリストがツリー形式で表示されるようになっている。
【0151】
ビヘイビア、アクションのリスト上の項目をダブル・クリックすると、該当する編集ウィンドウ(後述並びに図9を参照のこと)が開く。また、モーションのサムネイルをダブル・クリックすると、モーション・プレビュー・ウィンドウ(後述並びに図28を参照のこと)が開く。
【0152】
プロジェクト・ウィンドウは、ツリー・リスト上で選択された項目に関する詳細情報を表示する機能を有する。
【0153】
ビヘイビアに関する詳細情報には、サムネイル、ファイル名、分類項目、簡単な動作説明、動作時間などが含まれる。アクションに関する詳細情報には、サムネイル(初期ポーズ)、ファイル名、動作時間、初期ポーズ、終了ポーズ、ファイル容量などが含まれる。モーションに関する詳細情報には、サムネイル(初期ポーズ)、ファイル名、動作時間、初期ポーズ、終了ポーズ、ファイル容量などが含まれる。サウンドに関する詳細情報には、サムネイル(サウンドを表すアイコン)、ファイル名、動作時間、ファイル容量などが含まれる。LED動作に関する詳細情報には、サムネイル(LED動作を表すアイコン)、ファイル名、動作時間、ファイル容量などが含まれる。
【0154】
また、プロジェクト・ウィンドウの上方には「ファイル」、「編集」、「素材」、「ヘルプ」という各メニューを含んだメニュー・バーが用意されている。
【0155】
メニュー「ファイル」を選択すると、さらに「新規プロジェクト」、「プロジェクトを開く」、「プロジェクト保存」、「プロジェクト新規保存」、並びに「終了」という各サブ・メニューからなるプルダウン・メニューが出現する(図7を参照のこと)。
【0156】
サブメニュー「新規プロジェクト」を選択すると、新規のプロジェクトを生成する。既に未保存のプロジェクトが開かれている場合、そのプロジェクトを保存するかどうかの確認をユーザにプロンプトするダイアログが出現する。
【0157】
サブメニュー「プロジェクトを開く」を選択すると、既存のプロジェクト・ファイルを開く。既に未保存のプロジェクトが開かれている場合、そのプロジェクトを保存するかどうかの確認をユーザにプロンプトするダイアログが出現する(同上)。
【0158】
サブメニュー「プロジェクト保存」を選択すると、該当するプロジェクト・ファイルを上書き保存する。未保存ファイルの場合、プロジェクト新規保存(後述)と同様、ファイル設定ダイアログが出現して、ファイル名の入力をユーザにプロンプトする。
【0159】
サブメニュー「プロジェクト新規保存」を選択すると、ファイル設定ダイアログが出現して、ファイル名の入力をユーザにプロンプトする。
【0160】
サブメニュー「終了」を選択すると、このプロジェクト・ウィンドウを閉じる。該ウィンドウ内のプロジェクト・ファイルが未保存の場合には、ダイアログが出現して、これを保存するかどうかの確認をユーザにプロンプトする。
【0161】
また、メニュー「素材」を選択すると、さらに「新規ビヘイビア作成」、「新規アクション作成」、「素材読み込み」、並びに「素材削除」という各サブ・メニューからなるプルダウン・メニューが出現する(図8を参照のこと)。
【0162】
サブメニュー「新規ビヘイビア作成」を選択すると、ビヘイビア編集ウィンドウが新規の状態で開く。そのビヘイビアは、プロジェクト・ウィンドウ内のビヘイビアのリストに自動的に追加される。ビヘイビア編集は、本発明の要旨とは直接関連しないので、本明細書中ではこれ以上説明しない。
【0163】
サブメニュー「新規アクション作成」を選択すると、アクション編集ウィンドウ(後述並びに図9を参照のこと)が新規の状態で開く。そのアクションは、プロジェクト・ウィンドウ内のアクションのリストに自動的に追加される。
【0164】
サブメニュー「素材読み込み」を選択すると、ファイル指定ダイアログが出現して、利用可能な素材ファイルをプロジェクトに登録する。エクスプローラからドラッグ・アンド・ドロップ操作した場合と同様である。
【0165】
サブメニュー「素材削除」を選択すると、項目が選択状態のときのみ有効表示となり、選ばれるとその項目がプロジェクト・ウィンドウ内のリストから削除される。但し、ファイルがディレクトリから削除される訳ではない。
【0166】
また、メニュー「ヘルプ」には、トピックやサポート・ウェブ、バージョン情報などのサブメニューが含まれている。
【0167】
また、メニュー・バーの下方には、新規ビヘイビア作成ボタン(New Behavior)、新規アクション作成ボタン(New Action)、ごみ箱(Trash)などのよく使う機能を瞬時に呼び出すためのツール・ボタンが配設されている。
【0168】
新規ビヘイビア作成ボタンは、メニュー「素材」内のサブメニュー「新規ビヘイビア作成」に相当する。また、新規アクション作成ボタンは、メニュー「素材」内のサブメニュー「新規アクション作成」に相当する。また、ごみ箱は、メニュー「素材」内のサブメニュー「素材削除」に相当する。
【0169】
プロジェクト・ウィンドウ内では、いわゆるドラッグ・アンド・ドロップ操作が許容されている。すなわち、エクスプローラ上のファイル・アイコンをツリー上の所望の場所にドラッグ操作して直接登録することができる。
【0170】
また、ツリー・リスト上の素材を各編集ウィンドウにドラッグ操作することもできる。アクションはビヘイビア・ウィンドウにドラッグすることができる。また、モーション、サウンド、LED動作は、アクション・ウィンドウにドラッグすることができる。
【0171】
図9には、アクション編集ウィンドウの構成を概略的に示している。このアクション編集ウィンドウ上では、移動ロボット1の時間軸に沿った関節動作(モーション)と、サウンド及びLED動作のタイミングを設定することができる。該編集ウィンドウでの編集結果は、拡張子"act"を持つアクション・ファイルとして保存される。なお、移動ロボット1のモデルの相違(若しくはCPCコンポーネントの組み合わせからなるハードウェア構成情報の相違)によって異なるアクション編集ウィンドウを用意しているようなオーサリング・システムの場合には、ユーザによるモデル選択操作に応じてアクション編集ウィンドウが切り替わるように構成してもよい。
【0172】
図示の通り、アクション編集ウィンドウは、タイトル・バーと、メニュー・バーと、モーション・データやサウンド・データ、LED動作データを時間軸上に設定する編集領域とで構成される。
【0173】
メニュー・バーには「ファイル」、「素材」、「ヘルプ」という各メニューが用意されている。
【0174】
メニュー「ファイル」を選択すると、さらに「新規アクション」、「アクションを開く」、「アクション保存」、「アクション新規保存」、「実機再生」、並びに「閉じる」という各サブ・メニューからなるプルダウン・メニューが出現する(図10を参照のこと)。
【0175】
サブメニュー「新規アクション」を選択すると、新規のアクションを生成する。既に未保存のアクションが開かれている場合、そのアクションを保存するかどうかの確認をユーザにプロンプトするダイアログが出現する。
【0176】
サブメニュー「アクションを開く」を選択すると、既存のアクション・ファイルを開く。既に未保存のアクションが開かれている場合、そのアクションを保存するかどうかの確認をユーザにプロンプトするダイアログが出現する(同上)。
【0177】
サブメニュー「アクション保存」を選択すると、該当するアクション・ファイルを上書き保存する。未保存ファイルの場合、アクション新規保存(後述)と同様、ファイル設定ダイアログが出現して、ファイル名の入力をユーザにプロンプトする。
【0178】
サブメニュー「アクション新規保存」を選択すると、ファイル設定ダイアログが出現して、ファイル名の入力をユーザにプロンプトする。
【0179】
サブメニュー「実機再生」を選択すると、図9に示すアクション編集ウィンドウ上で編集されたアクション・ファイルを、実機すなわち移動ロボット1に転送して、現実に再生動作を試行する。アクション・ファイルは、例えば、Bluetoothのような近距離無線データ通信を介して移動ロボット1に転送してもよいし、あるいはメモリ・カード(メモリ・スティック)のようなメディアを媒介として装置間を移動させてもよい。
【0180】
サブメニュー「閉じる」を選択すると、このアクション編集ウィンドウを閉じる。該ウィンドウ内のアクション・ファイルが未保存の場合には、ダイアログが出現して、これを保存するかどうかの確認をユーザにプロンプトする。
【0181】
また、メニュー「編集」を選択すると、さらに「元に戻す」、「切り取り」、「モーションコピー」、「サウンドコピー」、「LEDコピー」、「上書き貼り付け」、「挿入貼り付け」、「削除」、「キーフレーム化」、「フレーム挿入」、「指定フレーム数挿入」、「フレーム削除」、並びに「指定フレーム削除」という各サブ・メニューからなるプルダウン・メニューが出現する(図11を参照のこと)。
【0182】
サブメニュー「元に戻す」を選択すると、直近の操作から順にアンドゥー処理が行われる。
【0183】
サブメニュー「切り取り」を選択すると、選択された時間幅がある場合はその範囲でのモーション、時間幅がない場合はそのフレームのモーション、サウンド、LED動作がカットされる。カットされたデータは、実際にはクリップボード内に一時的に保管される。カット処理により、フレーム自体はなくならず、フレームの内容に関する情報がなくなる。
【0184】
サブメニュー「モーションコピー」を選択すると、選択された時間幅がある場合は、その範囲でのモーションがコピーされる。コピーされたデータは、実際にはクリップボード内に一時的に保管される。
【0185】
サブメニュー「サウンドコピー」を選択すると、選択された時間幅がある場合は、その範囲でのサウンドがコピーされる。コピーされたデータは、実際にはクリップボード内に一時的に保管される。
【0186】
サブメニュー「LEDコピー」を選択すると、選択された時間幅がある場合は、その範囲でのLED動作がコピーされる。コピーされたデータは、実際にはクリップボード内に一時的に保管される。
【0187】
サブメニュー「上書き貼り付け」を選択すると、クリップボードに保管されている内容がカレント時刻にペーストされる。
【0188】
サブメニュー「挿入貼り付け」を選択すると、クリップボードに保管されている内容がカレント時刻に挿入ペーストされる。
【0189】
サブメニュー「削除」を選択すると、選択された時間幅がある場合はその範囲でのモーションが削除され、時間幅がない場合はそのフレームのモーション、サウンド、LED動作、すなわちそのフレームのアクションが削除される。
【0190】
サブメニュー「キーフレーム化」を選択すると、カレント時刻のフレームをキーフレーム化する。すなわち既存のキーフレーム間で補間されたポーズを生成して、これを新たなキーフレーム・データとすることができる。
【0191】
サブメニュー「フレーム挿入」を選択すると、選択された時間幅がある場合はその時間分のフレームがカレント時刻に、フレーム分だけ挿入される。このフレーム挿入操作の結果として、挿入フレーム時間だけアクションの全体時間が伸びることになる。
【0192】
サブメニュー「指定フレーム数挿入」を選択すると、数値入力のダイアログが出現して、該ダイアログ上で入力された数値分のフレームを挿入する。入力する数値の単位は時間指定とする。この指定フレーム数の挿入操作を行う結果として、指定フレーム時間だけアクションの全体時間が延びることになる。
【0193】
サブメニュー「フレーム削除」を選択すると、選択された時間幅がある場合はその時間分のフレームを、カレント時刻から削除する。この際、編集領域内で左にあったフレームを詰める。このフレーム削除操作の結果として、削除フレーム時間だけアクションの全体時間が縮むことになる。
【0194】
サブメニュー「指定フレーム削除」を選択すると、数値入力のダイアログが出現して、該ダイアログ上で入力された数値分のフレームを削除する。入力する数値の単位は時間指定とする。この際、編集領域内で左にあったフレームを詰める。この指定フレーム削除操作の結果として、指定フレーム時間だけアクションの全体時間が縮むことになる。
【0195】
また、メニュー「素材」を選択すると、さらに「モーションの読み込み」、「モーションの書き出し」、「サウンドの読み込み」、「サウンドの書き出し」、「LEDの読み込み」、並びに「LEDの書き出し」という各サブ・メニューからなるプルダウン・メニューが出現する(図12を参照のこと)。
【0196】
サブメニュー「モーションの読み込み」を選択すると、モーション・ファイルを指定した格納場所(例えばローカル・ディスク)から読み込んで、編集領域内のモーション・チャンネル(後述)上のカレント時刻に挿入する。この読み込み処理の際、モーション・ファイルに含まれるキーフレームはそのままキーフレームとなる。
【0197】
サブメニュー「モーションの書き出し」を選択すると、選択された時間幅のモーションを、モーション・ファイルとして指定した格納場所(例えばローカル・ディスク)に保存する。
【0198】
サブメニュー「サウンドの読み込み」を選択すると、サウンド・ファイルを指定した格納場所(例えばローカル・ディスク)から読み込んで、編集領域内のサウンド・チャンネル(後述)上のカレント時刻に挿入する。
【0199】
サブメニュー「サウンドの書き出し」を選択すると、選択された時間幅のサウンドを、例えばMIDI形式のサウンド・ファイルとして指定した格納場所(例えばローカル・ディスク)に保存する。
【0200】
サブメニュー「LEDの読み込み」を選択すると、LED動作ファイルを指定した格納場所(例えばローカル・ディスク)から読み込んで、編集領域内のLEDチャンネル(後述)上のカレント時刻に挿入する。
【0201】
サブメニュー「LEDの書き出し」を選択すると、選択された時間幅のLED動作を、例えばMIDI形式のLEDファイルとして指定した格納場所(例えばローカル・ディスク)に保存する。
【0202】
また、メニュー「ヘルプ」には、トピックやサポート・ウェブ、バージョン情報などのサブメニューが含まれている。
【0203】
再び図9に戻って、アクション編集ウィンドウの編集領域について説明する。図示の通り、アクション編集ウィンドウの編集領域は、横方向の時間軸と、縦方向のチャンネルで構成される2次元のタイムライン形式のテーブルである。タイムライン・テーブル内には、時間ルーラと、キーフレーム・チャンネルと、モーション・チャンネルと、サウンド・チャンネルと、LED動作チャンネルで構成される。
【0204】
時間ルーラは、単位切り替えラジオ・ボタンを利用して、実時間表示とのフレーム数表示とを切り替えることができる(図9に示す例では実時間表示が選択されている)。実時間表示の目盛の単位は、秒:ミリ秒(各2桁)表示とする。実時間表示における実時間と時間ルーラの表示との関係を以下に例示しておく。
【0205】
【数1】
00:00 = 0秒
05:23 = 5秒23
13:87 = 13秒87
【0206】
また、フレーム数表示の時間ルーラの目盛の単位は、フレーム数を4桁で表示する。最大の9999フレームは約160秒となる。
【0207】
実時間表示時(但し、単位をsecとする)、並びにフレーム数表示時(但し、単位をfとする)の各々の場合における画面上でのフレームの幅設定は、以下の通りとする。
【0208】
【表1】
Figure 0004765155
【0209】
【表2】
Figure 0004765155
【0210】
但し、ここで言う表示可能秒数とは、SVGA(Super Video Graphic Array)対応ディスプレイの最大化ウィンドウ時に表示可能なおよその秒数のことである。また、時間軸のスクロール(水平スクロール・バーの操作)によって時間ルーラは適切にスクロールする。
【0211】
時間ルーラは、単位切り替えラジオ・ボタンの他に、終了時刻フィールドとカレント時刻表示フィールドを含んでいる。
【0212】
終了時刻フィールドには、編集中のアクションの終了時刻(すなわち動作時間)を示す時刻数値が表示される(図示の例では"09:40"(=9秒40)が表示されている)。また、カレント時刻表示フィールドには、カレント位置の時刻数値が表示される(図示の例では"04:60"(=4秒60)が表示されている)。これらのフィールドは編集可能なテキスト・フィールドであり、意味のある時刻数字が入力されると、それが終了時刻になって最終キーフレームが移動したり、あるいはその位置にカレント時刻が移動する。
【0213】
また、時間ルーラ上では、初期ポーズを指定するための「初期ポーズ指定ポップアップ・メニュー」、最終ポーズを指定するための「最終ポーズ指定ポップアップ・メニュー」、時間ルーラの間隔を変更するための「時間幅変更ポップアップ・メニュー」(いずれも図示しない)を呼び出すことができる。
【0214】
編集領域内では、時刻表示ラインとして、「キーフレーム・ライン」と、「最終時刻表示ライン」と、「カレント時刻ライン」がそれぞれ表示される。
【0215】
各キーフレーム(後述)の時刻を示すキーフレーム・ラインが、各チャンネル上を交差する形で表示されるようにしている。したがって、ユーザは、モーション、サウンドとLED動作の間での同期を目視で確認しながら編集作業を行うことができる。
【0216】
また、編集中のアクションの終了時刻を示す終了時刻ラインが各チャンネル上を交差する形で表示するようにしているので、ユーザは編集対象となる時間の範囲を視覚的に理解することができる。終了時刻ラインを最終ポーズ・キーフレーム・ラインととらえることもできる。
【0217】
また、現在時刻を示すカレント時刻ラインが各チャンネル上を交差する形で表示するようにしている。基本的に、いずれかのチャンネルの上をクリックすると、その位置にカレント時刻が移動する。
【0218】
編集領域内でプレビュー・ウィンドウ(図示しない)が開いている場合、常にカレント時刻における移動ロボット1の3次元イメージが表示されるようになっている。このような3次元イメージは、カレント時刻に相当する補間フレームをオーサリング・システム1が自動生成して、そのときの各関節アクチュエータの動作などに基づいて座標変換などの画像処理を行うことによって得られる。
【0219】
キーフレーム・チャンネルは、時間ルーラが規定する時間軸に従ってキーフレームを表示するための領域である。
【0220】
本実施例では、キーフレーム・チャンネルは、開閉操作可能である。図13には、キーフレーム・チャンネルを開いた状態(キーフレーム詳細チャンネル)のアクション編集ウィンドウを示している。キーフレーム・チャンネルでは、時間軸上の該当する各場所にキーフレームを表すサムネイルが置かれる。ここで言う「キーフレーム」とは、モーションを実行する移動ロボットの該当する時刻におけるポーズを描写した画像フレームのことである。
【0221】
初期ポーズと最終ポーズは、それぞれキーフレーム・チャンネルの初めと終わりに位置する特別なキーフレームである。最初と最後のキーフレームはあらかじめ置かれている。
【0222】
キーフレーム・チャンネル上で、キーフレームが配置されていない時間では、この時間を挟む両端のキーフレームによって補間されるフレーム(以下では、「補間フレーム」とも言う)が再生されることになる。補間フレームはキーフレーム上では表示されない。本実施例に係るオーサリング・システムでは、キーフレーム・チャンネル上に各キーフレームを配置すると、各キーフレームで記述されたポーズを円滑につなぎ合わせるようなモーションが、コンピュータ処理により自動生成される。また、3Dモデルの重心を各キーフレームで設定して、3Dモデルの見た目上の動きを実機に近いものにすることができる。
【0223】
各キーフレームは、サムネイルの左端がキーフレームの時刻となるように、キーフレーム・チャンネル上に配置される。また、サムネイルを時間軸に沿って左右にドラッグすることで、キーフレームラインが追従して移動し、該当するキーフレームの時刻を変更することができる。また、最終ポーズのキーフレームの伸縮は、アクションの全体時間の伸縮となる。
【0224】
サムネイルをダブル・クリックすると、該当するポーズのポーズ編集ウィンドウが開いて、ポーズを編集することができる。但し、初期ポーズと最終ポーズは編集対象外であり、これらをダブルクリックしてもポーズ編集ウィンドウは開かない。ポーズ編集ウィンドウの詳細については後に詳解する。
【0225】
モーション・チャンネルは、時間ルーラが規定する時間軸に沿ってモーションの内容を編集・表示するための領域である。
【0226】
本実施例では、モーション・チャンネルは、開閉操作可能である。図14には、モーション・チャンネルを開いた状態(モーション詳細チャンネル)のアクション編集ウィンドウを示している。モーションは、移動ロボット1を構成する各関節アクチュエータの動作によって定義される。モーション・チャンネルでは、各関節アクチュエータの時系列的な動作を記述する各タイミングチャートが、生体モデルに従ってツリー状にリストアップ(ツリー・ビュー)される。
【0227】
それぞれのタイミングチャート上の折れ線グラフは、該当する関節アクチュエータの動きすなわち回転角度の時間的変化を示している。
【0228】
キーフレーム・ラインと折れ線との交差するポイントを上下にドラッグすることによって、該当する関節アクチュエータの当該時間における設定値を帰ることができる。また、このようなドラッグ操作の結果、キーフレーム・ラインに該当するポーズも変化し、キーフレームの内容も自動更新される。
【0229】
モーション詳細チャンネル上では、各関節アクチュエータの動きをタイミングチャートの形式で視覚的に把握することができる。また、折れ線に対して直接ドラッグ・アンド・ドロップ操作を適用することができる。また、ある関節アクチュエータに関する折れ線を他の関節アクチュエータへコピー操作することも可能である。したがって、モーション・ファイルの編集作業を直感的に行える上に、編集作業が大幅に省力化される。また、コピー操作により、左右対称な動作などの規則的な動作を簡単に編集することができる。また、同種のモーションであっても、移動ロボット1のモデルの相違(すなわち、CPCコンポーネントの組み合わせからなるハードウェア構成情報の相違)によりモーション・データが相違することがある。このような場合、モデル毎の固有データに基づいてデータ変換を適用して、異なるモデル用のデータとして再利用するようにしてもよい。
【0230】
モーション詳細チャンネルとそのツリー・ビューは、水平方向スクロール・バー並びに垂直方向スクロール・バーの操作に合わせて横方向並びに縦方向にスクロールする。
【0231】
サウンド・チャンネルは、時間ルーラが規定する時間軸に沿ってサウンド・データを表示するための領域である。本実施例では、アクション編集ウィンドウからは独立した「サウンド詳細ウィンドウ」を開いて、該ウィンドウ上でMIDI形式のサウンド・データをGUI操作によって編集することができる。但し、サウンド詳細ウィンドウに関しては後に説明する。
【0232】
サウンド・チャンネルには、サウンドON/OFFチェック・ボックスが配設されている。該チェック・ボックスにチェックを入れることにより、再生時にサウンドを鳴らすことができる。
【0233】
LED動作チャンネルは、時間ルーラが規定する時間軸に沿ってLED動作データを表示するための領域である。本実施例では、アクション編集ウィンドウからは独立した「LED詳細ウィンドウ」を開いて、該ウィンドウ上でMIDI形式のLED動作データをGUI操作で編集することができる。LED詳細ウィンドウに関しては後に説明する。
【0234】
LED動作チャンネルには、サウンドON/OFFチェック・ボックスが配設されている。該チェック・ボックスにチェックを入れることにより、再生時にLED動作を付勢することができる。
【0235】
アクション編集ウィンドウは、プロジェクト・ウィンドウ(図6を参照のこと)からのドラッグ・アンド・ドロップ操作を受容することができる。すなわち、プロジェクト・ウィンドウからモーション・ファイル、サウンド・ファイル、LEDファイルなど、アクションの構成要素となる各ファイルを直接ドラッグ・アンド・ドロップして、アクション・ウィンドウに簡易に登録することができる。
【0236】
また、アクション編集ウィンドウは、MS Windowsエクスプローラからのドラッグ・アンド・ドロップ操作も受容することができる。すなわち、該エクスプローラ・ウィンドウからモーション・ファイル、サウンド・ファイル、LEDファイルなど、アクションの構成要素となる各ファイルを直接ドラッグ・アンド・ドロップして、アクション・ウィンドウに簡易に登録することができる。アクション・ウィンドウに登録されたファイルは、プロジェクト・ウィンドウにも同時に登録される。
【0237】
図15には、MIDI形式のサウンド・ファイルを編集するためのサウンド詳細ウィンドウの構成を概略的に示している。図示の通り、このサウンド詳細ウィンドウは、タイトル・バーと、メニュー・バーと、GUI操作によりMIDI形式サウンド・ファイルの編集作業を行う編集領域とで構成される。
【0238】
メニュー・バーには「ファイル」、「編集」、「設定」、「ヘルプ」という各メニューが用意されている。
【0239】
メニュー「ファイル」を選択すると、さらに「新規サウンド」、「サウンドを開く」、「サウンド保存」、「サウンド新規保存」、並びに「閉じる」という各サブ・メニューからなるプルダウン・メニューが出現する(図16を参照のこと)。
【0240】
サブメニュー「新規サウンド」を選択すると、新規のMIDIサウンドを生成する。既に未保存のMIDIサウンドが開かれている場合、そのMIDIサウンドを保存するかどうかの確認をユーザにプロンプトするダイアログが出現する。
【0241】
サブメニュー「サウンドを開く」を選択すると、既存のMIDIサウンド・ファイルを開く。既に未保存のMIDIサウンドが開かれている場合、そのMIDIサウンドを保存するかどうかの確認をユーザにプロンプトするダイアログが出現する(同上)。
【0242】
サブメニュー「サウンド保存」を選択すると、該当するMIDIサウンド・ファイルを上書き保存する。未保存ファイルの場合、サウンド新規保存(後述)と同様、ファイル設定ダイアログが出現して、ファイル名の入力をユーザにプロンプトする。
【0243】
サブメニュー「サウンド新規保存」を選択すると、ファイル設定ダイアログが出現して、ファイル名の入力をユーザにプロンプトする。
【0244】
サブメニュー「閉じる」を選択すると、このサウンド詳細ウィンドウを閉じる。該ウィンドウ内のサウンド・ファイルが未保存の場合には、ダイアログが出現して、これを保存するかどうかの確認をユーザにプロンプトする。
【0245】
メニュー「編集」を選択すると、さらに「元に戻す」、「切り取り」、「コピー」、「上書き貼り付け」、「挿入貼り付け」、並びに「削除」という各サブ・メニューからなるプルダウン・メニューが出現する(図17を参照のこと)。
【0246】
サブメニュー「元に戻す」を選択すると、直近の操作から順にアンドゥー処理が行われる。
【0247】
サブメニュー「切り取り」を選択すると、選択された時間幅がある場合はその範囲でのサウンドがカットされる。カットされたデータは、実際にはクリップボード内に一時的に保管される。カット処理により、フレーム自体はなくならず、フレームの内容に関する情報がなくなる。
【0248】
サブメニュー「コピー」を選択すると、選択された時間幅がある場合は、その範囲でのサウンドがコピーされる。コピーされたデータは、実際にはクリップボード内に一時的に保管される。
【0249】
サブメニュー「上書き貼り付け」を選択すると、クリップボードに保管されている内容がカレント時刻にペーストされる。
【0250】
サブメニュー「挿入貼り付け」を選択すると、クリップボードに保管されている内容がカレント時刻に挿入ペーストされる。
【0251】
サブメニュー「削除」を選択すると、選択された時間幅がある場合はその範囲でのサウンドが削除される。フレーム自体はなくならず、フレームの内容の情報がなくなる。
【0252】
メニュー「設定」を選択すると、さらに「四部音符の長さ」、並びに「拍子」という各サブ・メニューからなるプルダウン・メニューが出現する(図18を参照のこと)。
【0253】
サブメニュー「四分音符の長さ」は、さらにサブメニュー(図示しない)を持ち、四分音符の1分間でのみ刻み数を入れることができる。ここで設定された長さが、スコア上に時間軸方向のグリッドとして表示される。
【0254】
サブメニュー「拍子」は、さらにリズムを指定するサブメニュー(図示しない)を持つ。ここで設定された値により、スコア上の時間軸グリッドに、拍子を決める線が描かれる。
【0255】
また、メニュー「ヘルプ」には、トピックやサポート・ウェブ、バージョン情報などのサブメニューが含まれている。
【0256】
再び図15に戻って、MIDIサウンド用のサウンド詳細ウィンドウの編集領域について説明する。該編集領域は、横方向の時間軸と、縦方向のチャンネルで構成される2次元のタイムライン形式のテーブルである。タイムライン・テーブル内は、時間ルーラと、キーフレーム・チャンネルと、スコア・チャンネルと、ベロシティ・チャンネルとで構成される。
【0257】
時間ルーラは、単位切り替えラジオ・ボタンを利用して、実時間表示とのフレーム数表示とを切り替えることができる(図15に示す例では実時間表示が選択されている)。実時間表示の目盛の単位は、秒:ミリ秒(各2桁)表示とする。実時間表示における実時間と時間ルーラの表示との関係については、前述の[数1]を参照されたい。また、フレーム数表示の時間ルーラの目盛の単位は、フレーム数を4桁で表示する。最大の9999フレームは約160秒となる。
【0258】
実時間表示時(但し、単位をsecとする)、並びにフレーム数表示時(但し、単位をfとする)の各々の場合における画面上でのフレームの幅設定に関しては、前述の[表1]並びに[表2]を参照されたい。
【0259】
時間ルーラには、単位切り替えラジオ・ボタンの他に、終了時刻フィールドとカレント時刻表示フィールドを含んでいる。終了時刻フィールドには、編集中のアクションの終了時刻(すなわち動作時間)を示す時刻数値が表示される(図示の例では"09:40"(=9秒40)が表示されている)。また、カレント時刻表示フィールドには、カレント位置の時刻数値が表示される(図示の例では"04:60"(=4秒60)が表示されている)。これらのフィールドは編集可能なテキスト・フィールドであり、意味のある時刻数字が入力されると、それが終了時刻になって最終キーフレームが移動したり、あるいはその位置にカレント時刻が移動する。
【0260】
また、時間ルーラ上では、時間ルーラの間隔を変更するための「時間幅変更ポップアップ・メニュー」(図示しない)を呼び出すことができる。
【0261】
編集領域内では、時刻表示ラインとして、「キーフレーム・ライン」と、「最終時刻表示ライン」と、「カレント時刻ライン」がそれぞれ表示される。各キーフレーム(後述)の時刻を示すキーフレーム・ラインが、各チャンネル上を交差する形で表示されており、ユーザは、キーフレームとの同期を目視で確認しながらMIDIサウンドの編集作業を行うことができる。また、編集中のアクションの終了時刻を示す終了時刻ラインが各チャンネル上を交差する形で表示するようにしているので、ユーザは編集対象となる時間の範囲を視覚的に理解することができる。また、現在時刻を示すカレント時刻ラインが各チャンネル上を交差する形で表示するようにしている。基本的に、いずれかのチャンネルの上をクリックすると、その位置にカレント時刻が移動する。
【0262】
キーフレーム・チャンネルでは、時間ルーラが規定する時間軸に沿ってアクション編集ウィンドウから取得したキーフレーム位置を表示される。但し、前述のアクション編集ウィンドウの場合(図13を参照のこと)とは相違し、サウンド詳細ウィンドウ内ではキーフレーム・チャンネルを開閉することはできない。
【0263】
スコア・チャンネルは、GUI操作によってMIDIサウンドを編集するための領域であり、ピアノ鍵盤(但し、移動ロボット1のモデルによってその有効音域は相違する)と、時間軸方向の基本グリッドによって構成される。
【0264】
ピアノ鍵盤では、ピアノ鍵盤のイメージ表示により移動ロボット1のハードウェア仕様などで許容される最大音域を表示するようになっている(あるいは、再生可能な音域を明るく表示し、それ以外をグレー表示するようにしてもよい)。基本となるCキー部分には、C3、C4などの絶対音の高さを表示する
【0265】
スコア部分には、設定された四分音符の時間幅のグリッドが表示される。また、拍子で設定された値(前述)によって、2グリッド(すなわち2拍子)、3グリッド(3拍子)、4グリッド(4拍子)のラインが強調される。
【0266】
スコア・チャンネル上には、時間軸の基準となる音長と、ピアノ・キーの高さによってスコアが構成される。1つの桝目を「セル」と呼ぶ。音のあるセルには色が付く。但し、一音のみの再生モデルの場合、同じ時間軸上の異なる音階には音は置けない。
【0267】
また、空の(すなわち色が付いていない)セルをクリックすると、選択されている音符マークの長さの音が置かれる。同一時間上の他の高さに音が存在するとき、音はクリックされた高さに置き換わる。既に音が存在するセルがクリックされると、その音が除かれる。
【0268】
ピアノ鍵盤の左側の領域に、16分音符、八分音符、四分音符、二分音符、全音符、付点八分音符、付点四分音符、付点二分音符などの音符マークを表示しておく。これら音符マークは互いに排他的な選択状態を持ち、常にいずれか1つのみが選択されるものとする。また、マウス・クリック操作により選択アイテムが変化する。
【0269】
ベロシティ・チャンネルは、各音毎のベロシティの強さを表示する領域である。図15に示す例では、音の強さは棒グラフで表示されるが、折れ線グラフで表示してもよい。各節点での音の強さは、棒グラフの最上端をドラッグすることによった調整することができる。デフォルトでは最大音量が設定されている。
【0270】
この他、サウンド詳細チャンネルには、編集されたサウンドの再生動作を指示する「再生ボタン」を用意しておいもよい。
【0271】
また、図19には、WAVE形式のサウンド・ファイルを表示するためのサウンド詳細ウィンドウの構成を概略的に示している。図示の通り、サウンド詳細ウィンドウは、タイトル・バーと、メニュー・バーと、WAVE形式サウンド・ファイルを編集する編集領域とで構成される。
【0272】
メニュー・バーには「ファイル」、「編集」、「ヘルプ」という各メニューが用意されている。
【0273】
メニュー「ファイル」を選択すると、さらに「サウンドを開く」、「サウンド保存」、「サウンド新規保存」、並びに「閉じる」という各サブ・メニューからなるプルダウン・メニューが出現する(図20を参照のこと)。
【0274】
サブメニュー「サウンドを開く」を選択すると、既存のWAVEサウンド・ファイルを開く。既に未保存のWAVEサウンドが開かれている場合、そのWAVEサウンドを保存するかどうかの確認をユーザにプロンプトするダイアログが出現する。
【0275】
サブメニュー「サウンド保存」を選択すると、該当するWAVEサウンド・ファイルを上書き保存する。また、サブメニュー「サウンド新規保存」を選択すると、ファイル設定ダイアログが出現して、ファイル名の入力をユーザにプロンプトする。
【0276】
サブメニュー「閉じる」を選択すると、このサウンド詳細ウィンドウを閉じる。該ウィンドウ内のサウンド・ファイルが未保存の場合には、ダイアログが出現して、これを保存するかどうかの確認をユーザにプロンプトする。
【0277】
メニュー「編集」を選択すると、さらに「元に戻す」、「切り取り」、「コピー」、「上書き貼り付け」、「挿入貼り付け」、並びに「削除」という各サブ・メニューからなるプルダウン・メニューが出現する(図21を参照のこと)。
【0278】
サブメニュー「元に戻す」を選択すると、直近の操作から順にアンドゥー処理が行われる。
【0279】
サブメニュー「切り取り」を選択すると、選択された時間幅がある場合はその範囲でのサウンドがカットされる。カットされたデータは、実際にはクリップボード内に一時的に保管される。カット処理により、フレーム自体がなくなり、後ろが詰まる。
【0280】
サブメニュー「コピー」を選択すると、選択された時間幅がある場合は、その範囲でのサウンドがコピーされる。コピーされたデータは、実際にはクリップボード内に一時的に保管される。
【0281】
サブメニュー「上書き貼り付け」を選択すると、クリップボードに保管されている内容がカレント時刻にペーストされる。
【0282】
サブメニュー「挿入貼り付け」を選択すると、クリップボードに保管されている内容がカレント時刻に挿入ペーストされる。
【0283】
サブメニュー「削除」を選択すると、選択された時間幅がある場合はその範囲でのサウンドが削除される。フレーム自体はなくならず、その分が無音の状態になる。
【0284】
また、メニュー「ヘルプ」には、トピックやサポート・ウェブ、バージョン情報などのサブメニューが含まれている。
【0285】
WAVEサウンド用のサウンド詳細ウィンドウの編集領域は、横方向の時間軸と、縦方向のチャンネルで構成される2次元のタイムライン形式のテーブルである。タイムライン・テーブル内は、時間ルーラと、キーフレーム・チャンネルと、WAVEチャンネルで構成される。
【0286】
時間ルーラは、単位切り替えラジオ・ボタンを利用して、実時間表示とのフレーム数表示とを切り替えることができる(図15に示す例では実時間表示が選択されている)。実時間表示の目盛の単位は、秒:ミリ秒(各2桁)表示とする。実時間表示における実時間と時間ルーラの表示との関係については、前述の[数1]を参照されたい。また、フレーム数表示の時間ルーラの目盛の単位は、フレーム数を4桁で表示する。最大の9999フレームは約160秒となる。
【0287】
実時間表示時(但し、単位をsecとする)、並びにフレーム数表示時(但し、単位をfとする)の各々の場合における画面上でのフレームの幅設定に関しては、前述の[表1]並びに[表2]を参照されたい。
【0288】
時間ルーラは、単位切り替えラジオ・ボタンの他に、終了時刻フィールドとカレント時刻表示フィールドを含んでいる。
【0289】
終了時刻フィールドには、編集中のアクションの終了時刻(すなわち動作時間)を示す時刻数値が表示される(図示の例では"09:40"(=9秒40)が表示されている)。また、カレント時刻表示フィールドには、カレント位置の時刻数値が表示される(図示の例では"04:60"(=4秒60)が表示されている)。これらのフィールドは編集可能なテキスト・フィールドであり、意味のある時刻数字が入力されるとそれが終了時刻になって最終キーフレームが移動したり、あるいはその位置にカレント時刻が移動する。
【0290】
また、時間ルーラ上では、時間ルーラの間隔を変更するための「時間幅変更ポップアップ・メニュー」(図示しない)を呼び出すことができる。
【0291】
編集領域内では、時刻表示ラインとして、「キーフレーム・ライン」と、「最終時刻表示ライン」と、「カレント時刻ライン」がそれぞれ表示される。
【0292】
各キーフレーム(後述)の時刻を示すキーフレーム・ラインが、各チャンネル上を交差する形で表示されており、ユーザは、キーフレームとの同期を目視で確認しながらWAVEサウンドの編集作業を行うことができる。また、編集中のアクションの終了時刻を示す終了時刻ラインが各チャンネル上を交差する形で表示するようにしているので、ユーザは編集対象となる時間の範囲を視覚的に理解することができる。また、現在時刻を示すカレント時刻ラインが各チャンネル上を交差する形で表示するようにしている。基本的に、いずれかのチャンネルの上をクリックすると、その位置にカレント時刻が移動する。
【0293】
キーフレーム・チャンネルでは、時間ルーラが規定する時間軸に沿ってアクション編集ウィンドウから取得したキーフレーム位置を表示される。但し、前述のアクション編集ウィンドウの場合(図13を参照のこと)とは相違し、サウンド詳細ウィンドウ内ではキーフレーム・チャンネルを開閉することはできない。
【0294】
WAVEチャンネルでは、図19に示すように、WAVE形式のサウンド・ファイルの中身が波形として表示される。但し、MIDI形式用のスコア・チャンネル(前述)とは相違し、WAVEチャンネル上では、基本的な切り貼り操作しか許容されていない。
【0295】
この他、サウンド詳細チャンネルには、編集されたサウンドの再生動作を指示する「再生ボタン」を用意しておいもよい。
【0296】
また、図22には、MIDI形式で記述されたLED動作ファイルを表示して編集するためのLED詳細ウィンドウの構成を概略的に示している。図示の通り、サウンド詳細ウィンドウは、タイトル・バーと、メニュー・バーと、WAVE形式LED動作ファイルを編集する編集領域とで構成される。
【0297】
メニュー・バーには「ファイル」、「編集」、「ヘルプ」という各メニューが用意されている。
【0298】
メニュー「ファイル」を選択すると、さらに「新規LED動作」、「LED動作を開く」、「LED動作保存」、「LED動作新規保存」、並びに「閉じる」という各サブ・メニューからなるプルダウン・メニューが出現する(図23を参照のこと)。
【0299】
サブメニュー「新規LED動作」を選択すると、新規のLED動作を生成する。既に未保存のLED動作が開かれている場合、そのLED動作を保存するかどうかの確認をユーザにプロンプトするダイアログが出現する。
【0300】
サブメニュー「LED動作を開く」を選択すると、既存のLED動作・ファイルを開く。既に未保存のLED動作が開かれている場合、そのMIDIサウンドを保存するかどうかの確認をユーザにプロンプトするダイアログが出現する(同上)。
【0301】
サブメニュー「LED動作保存」を選択すると、該当するLED動作ファイルを上書き保存する。未保存ファイルの場合、LED動作新規保存(後述)と同様、ファイル設定ダイアログが出現して、ファイル名の入力をユーザにプロンプトする。
【0302】
サブメニュー「LED動作新規保存」を選択すると、ファイル設定ダイアログが出現して、ファイル名の入力をユーザにプロンプトする。
【0303】
サブメニュー「閉じる」を選択すると、このLED動作詳細ウィンドウを閉じる。該ウィンドウ内のLED動作ファイルが未保存の場合には、ダイアログが出現して、これを保存するかどうかの確認をユーザにプロンプトする。
【0304】
メニュー「編集」を選択すると、さらに「元に戻す」、「切り取り」、「コピー」、「上書き貼り付け」、「挿入貼り付け」、並びに「削除」という各サブ・メニューからなるプルダウン・メニューが出現する(図17を参照のこと)。
【0305】
サブメニュー「元に戻す」を選択すると、直近の操作から順にアンドゥー処理が行われる。
【0306】
サブメニュー「切り取り」を選択すると、選択された時間幅がある場合はその範囲でのLED動作がカットされる。カットされたデータは、実際にはクリップボード内に一時的に保管される。カット処理により、フレーム自体はなくならず、フレームの内容に関する情報がなくなる。
【0307】
サブメニュー「コピー」を選択すると、選択された時間幅がある場合は、その範囲でのLED動作がコピーされる。コピーされたデータは、実際にはクリップボード内に一時的に保管される。
【0308】
サブメニュー「上書き貼り付け」を選択すると、クリップボードに保管されている内容がカレント時刻にペーストされる。
【0309】
サブメニュー「挿入貼り付け」を選択すると、クリップボードに保管されている内容がカレント時刻に挿入ペーストされる。
【0310】
サブメニュー「削除」を選択すると、選択された時間幅がある場合はその範囲でのLED動作が削除される。フレーム自体はなくならず、フレームの内容の情報がなくなる。
【0311】
また、メニュー「ヘルプ」には、トピックやサポート・ウェブ、バージョン情報などのサブメニューが含まれている。
【0312】
再び図22に戻って、LED詳細ウィンドウの編集領域について説明する。該編集領域は、横方向の時間軸と、縦方向のチャンネルで構成される2次元のタイムライン形式のテーブルである。タイムライン・テーブル内は、時間ルーラと、キーフレーム・チャンネルと、スコア・チャンネルとで構成される。
【0313】
時間ルーラは、単位切り替えラジオ・ボタンを利用して、実時間表示とのフレーム数表示とを切り替えることができる(図22に示す例では実時間表示が選択されている)。実時間表示の目盛の単位は、秒:ミリ秒(各2桁)表示とする。実時間表示における実時間と時間ルーラの表示との関係については、前述の[数1]を参照されたい。また、フレーム数表示の時間ルーラの目盛の単位は、フレーム数を4桁で表示する。最大の9999フレームは約160秒となる。
【0314】
実時間表示時(但し、単位をsecとする)、並びにフレーム数表示時(但し、単位をfとする)の各々の場合における画面上でのフレームの幅設定に関しては、前述の[表1]並びに[表2]を参照されたい。
【0315】
時間ルーラは、単位切り替えラジオ・ボタンの他に、終了時刻フィールドとカレント時刻表示フィールドを含んでいる。終了時刻フィールドには、編集中のアクションの終了時刻(すなわち動作時間)を示す時刻数値が表示される(図示の例では"09:40"(=9秒40)が表示されている)。また、カレント時刻表示フィールドには、カレント位置の時刻数値が表示される(図示の例では"04:60"(=4秒60)が表示されている)。これらのフィールドは編集可能なテキスト・フィールドであり、意味のある時刻数字が入力されると、それが終了時刻になって最終キーフレームが移動したり、あるいはその位置にカレント時刻が移動する。
【0316】
また、時間ルーラ上では、時間ルーラの間隔を変更するための「時間幅変更ポップアップ・メニュー」(図示しない)を呼び出すことができる。
【0317】
編集領域内では、時刻表示ラインとして、「キーフレーム・ライン」と、「最終時刻表示ライン」と、「カレント時刻ライン」がそれぞれ表示される。各キーフレーム(後述)の時刻を示すキーフレーム・ラインが、各チャンネル上を交差する形で表示されており、ユーザは、キーフレームとの同期を目視で確認しながらMIDI形式で記述されたLED動作の編集作業を行うことができる。また、編集中のアクションの終了時刻を示す終了時刻ラインが各チャンネル上を交差する形で表示するようにしているので、ユーザは編集対象となる時間の範囲を視覚的に理解することができる。また、現在時刻を示すカレント時刻ラインが各チャンネル上を交差する形で表示するようにしている。基本的に、いずれかのチャンネルの上をクリックすると、その位置にカレント時刻が移動する。
【0318】
キーフレーム・チャンネルでは、時間ルーラが規定する時間軸に沿ってアクション編集ウィンドウから取得したキーフレーム位置を表示する。但し、前述のアクション編集ウィンドウの場合(図13を参照のこと)とは相違し、LED詳細ウィンドウ内ではキーフレーム・チャンネルを開閉することはできない。
【0319】
スコア・チャンネルは、GUI操作によってMIDI形式で記述されるLED動作を編集するための領域であり、移動ロボット1本体上でLEDを配置した部位のリストと、時間軸方向の基本グリッドによって構成される。本実施例では、でこ(でこぴん)と、右目αと、左目αと、右目βと、左目βと、右目γと、左目γと、しっぽαと、しっぽβの各部位にLEDが配置されている。
【0320】
スコア・チャンネル上には、時間軸上に各部位のLEDの点灯状況を表示することによって各部位リスト毎のスコアが構成される。1つの桝目を「セル」と呼ぶ。時間軸上でLEDが点灯する部位に相当する位置のセルには、その色や点灯強度に応じた色が付く。MIDIサウンドを編集するスコア・チャンネル(前述及び図15を参照のこと)とは相違し、各部位のLEDは独立して発光/消灯することができる。
【0321】
スコア・チャンネルの左横には、LED部位ビジュアルが表示されている。これは、変更可能なLEDの各部位をグラフィック表現したものである。
【0322】
また、LED部位ビジュアルの下方にはベロシティ・マークが表示されている。ベロシティ・マークは、上昇、最高位キープ、下降などの種類を表示したマークである。これらのマークは、互いに排他的な選択状態を持ち、常にどれか1つが選ばれているものとする。また、マウス・クリックによって、選択アイテムが変化する。
【0323】
本実施例に係るオーサリング・システムは、上述のアクション編集ウィンドウ上で編集したアクションの内容を視覚的に確認するために、プレビュー・ウィンドウを用意している。
【0324】
図25には、プレビュー・ウィンドウの構成を概略的に示している。同図に示すように、プレビュー・ウィンドウは、「3Dビュー」と、「3D表示切り替えボタン群」と、「カレント時刻フィールド」と、「再生ボタン群」とで構成される。
【0325】
3Dビューには、コンピュータ・グラフィックス処理により生成された3次元移動ロボット1の映像が常に表示される。このビュー上でドラッグすることにより、視線方向を移動させて、ビューの見え方を変えることができる。また、図示しないが、2以上の視点から3Dモデルを同時にプレビューできるように構成してもよい。また、ビューの動きは、3D表示切り替えボタン群上でのユーザ入力操作と連動する。また、モーションの3D表示を作成処理する際に、3Dモデルにより各部位どうしの衝突(collision)や各関節の駆動速度のチェック機能を備えている。また、3Dモデルの重心を各キーフレームで設定して、3Dモデルの見た目上の動きを実機に近いものにすることができる。
【0326】
また、3Dビューの右側には、LED動作を表示するためのLED動作プレビュー領域が配設されている。このプレビュー領域では、上述した3Dビュー上の移動ロボット1の動きと同期させて、移動ロボット1のLEDが点滅する様子を表示するようになっている。
【0327】
3D表示切り替えボタン群には、「回転」、「ズームイン/アウト」、「パン」、「ホーム位置」という各ボタンが配設されている。ユーザは、これらのボタンをクリック操作することにより、3Dビュー内の視線方向を変更することができる。
【0328】
例えば、回転ボタンをクリックすると、回転モードになり、以降3Dビューをドラッグすると、3Dビュー内の移動ロボット1が回転する。
【0329】
また、ズームイン/アウト・ボタンをクリックすると、ズーム・モードになり、以降3Dビューを上下にドラッグすると、3Dビュー内の移動ロボット1がズームイン/アウトする。
【0330】
また、パン・ボタンをクリックすると、3Dビューはパン・モードになり、以降3Dビューを上下左右にドラッグすると3Dビューがパンすなわち高速移動する。
【0331】
また、ホーム位置ボタンをクリックすると、移動ロボット1の3次元表示がデフォルトのビューすなわちデフォルトの視線方向から見た状態に戻る。
【0332】
カレント時刻フィールドには、3Dビューに表示されている描画内容のカレント時刻が表示される(同図に示す例では、カレント時刻"04:60"が表示されている)。このフィールドに時刻として意味のある文字が入力されると、3Dビューの表示は該当する時刻のフレームに切り替わる。また、カレントの時刻位置を相対的にビジュアル表示するようになっている。
【0333】
再生ボタン群には、「フレームの巻き戻し」、「前のキーフレーム」、「プレイ/ストップ」、「フレームのコマ送り」、「フレーム送り」、「ループ再生」という各ボタンが配設されている。
【0334】
「フレームの巻き戻し」をクリックすると、3Dビューの表示が最初のフレームに戻る。「前のキーフレーム」をクリックすると、3Dビューの表示がカレント位置から直前のキーフレームに飛ぶ。また、「プレイ/ストップ」をクリックすると、3Dビュー表示の再生を開始又は停止する(プレイ中は、プレイ/ストップ・ボタンはストップとなり、ストップ中はプレイとして作用する)。また、「フレームのコマ送り」は、3Dビュー表示の再生中のみ有効であり、クリックされると1フレーム分がコマ送りされる。また、「フレーム送り」をクリックすると、3Dビューの表示が最後のフレームに進む。また、「ループ再生」をクリックすると、3Dビューの表示がループ再生される。
【0335】
また、本実施例に係るオーサリング・システムは、移動ロボット1の3次元的なポーズを、ドラッグを基調とするGUI操作により編集するためにポーズ・ウィンドウを用意している。
【0336】
ポーズ・ウィンドウ上で編集されるポーズは、例えば、モーションを構成するキーフレームとして利用することができる。例えば、キーフレーム・チャンネル上で所望のキーフレームをダブルクリックすることにより、このポーズ・ウィンドウを起動することができる。
【0337】
図26には、ポーズ・ウィンドウの構成を概略的に示している。このポーズ・ウィンドウ上では、移動ロボット1を構成する各関節アクチュエータの回転角度をGUI操作により直接指示して、所望のポーズを簡易に指定することができる。ポーズ・ウィンドウは、実体表示領域と、リスト指定領域と、設定値領域と、3D表示領域と、3D表示切替ボタン群と、表示切り替えポップアップとで構成される。
【0338】
実体指定領域では、移動ロボット1の展開平面図を表示され編集可能部位をユーザに選択させる。選択された部位は、リスト指定の項目が選択されて、3D表示上で強調表示又はブリンクされ、設定値エリアの内容が切り替わる。
【0339】
リスト指定領域では、移動ロボット1の編集可能部位とその設定値がリストとして表示される。ユーザはこのリストの中から特定の部位を選択すると、実体指定領域では該当する部位が強調表示され、3D表示領域では強調表示又はブリンクされ、設定値領域の内容が切り替わる。
【0340】
設定値領域では、各編集可能部位の設定部位名称、設定値、設定可能最小値並びに最大値が一覧表示されている。ユーザがある特定の部位を選択するとその内容が切り替わる。設定値は、入力可能フィールドで直接キー入力することができる。角度の表現は円弧表現とし、指定用のラインをドラッグすることによって設定値を変更することができる。
【0341】
3D表示領域では、3Dグラフィックスにより生成された移動ロボット1の全身画像が地面とともに描画される。ユーザは、この3D表示から該当する部位をクリックすることにより、その部位を選択することができ、選択部位は強調表示される。さらに、選択部位をドラッグすることにより、設定値を直接切り替えることができる。
【0342】
3D表示領域における表示内容は3D表示切り替えボタンと連動しており、この3D表示領域のビュー上をドラッグすることによりビューの見え方すなわち視線方向を変えることができる。
【0343】
3D表示切り替えボタン群には、「回転」、「ズームイン/アウト」、「パン」、「ホーム位置」という各ボタンが配設されている。ユーザは、これらのボタンをクリック操作することにより、3D表示領域内の視線方向を変更することができる。
【0344】
例えば、回転ボタンをクリックすると、回転モードになり、以降3D表示領域をドラッグすると3D表示領域内の移動ロボット1が回転する。また、ズームイン/アウト・ボタンをクリックすると、ズーム・モードになり、以降3D表示領域を上下にドラッグすると3D表示領域内で移動ロボット1がズームイン/アウトする。また、パン・ボタンをクリックするとパン・モードになり、以降3D表示領域を上下左右にドラッグすると3D表示領域内で移動ロボット1がパンすなわち高速移動する。また、ホーム位置ボタンをクリックすると、移動ロボット1の3次元表示がデフォルトの視線方向から見た状態に戻る。
【0345】
また、表示切り替えポップアップは、ボタンをクリックすることにより、正面/背面/右側面/左側面/上面/底面/3Dからなるポップアップ・メニュー(図示しない)が表示され、メニュー選択により選択された方向からのビューに切り替えるようになっている。
【0346】
ポーズ・ウィンドウには、「OK」ボタンと「キャンセル」ボタンが用意されている。OKボタンをクリックすると、該ウィンドウ内におけるすべての編集項目を有効にして、このウィンドウを閉じる。他方、キャンセル・ボタンをクリックするとすべての編集項目を無効にしてこのウィンドウを閉じる(周知)。
【0347】
なお、ポーズ・ウィンドウは、オーサリング・システム上で移動ロボット1のポーズを編集する場合だけではなく、実機上での直接教示などの作業により移動ロボット1に対して教え込まれた姿勢すなわち各関節アクチュエータの関節値をシステムに読み込んでプレビューする目的で使用する場合にも使用することができる。
【0348】
図27には、実機上で直接教示した内容をポーズ・ウィンドウ上でプレビューするための処理手順について、フローチャートの形式で示している。以下、このフローチャートに従って説明する。
【0349】
まず、移動ロボット1のオペレータが、実機上で胴体や各脚部などを手でつかんで所望のポーズをとらせるなどして、直接教示を行う(ステップS1)。
【0350】
次いで、この直接教示の結果として得られた各関節アクチュエータなどの編集可能部位における設定値を読み込んで、一旦セーブし(ステップS2)、次いで、オーサリング・システムに転送する(ステップS3)。
【0351】
オーサリング・システムへのデータ転送方法は特に問われない。例えば、Bluetoothのような近接無線データ通信を利用してもよいし、メモリ・スティックなどの記録メディアを媒介にして装置間でデータの移動を行うようにしてもよい。
【0352】
一方、オーサリング・システム側では、編集可能部位の設定値を読み込むと(ステップS4)、上述したポーズ・ウィンドウを開いて、読み込まれた設定値通りに、実態指定領域、リスト指定領域、設定値エリア、並びに3D表示領域における表示内容や描画内容を更新する(ステップS5)。
【0353】
また、本実施例に係るオーサリング・システムは、モーション・チャンネル(前述)で編集されたモーション、あるいはポーヴ・ウィンドウにより編集された各ポーズをキーフレームとしたモーションをプレビューするためのモーション・プレビューワを用意している。
【0354】
図28には、モーション・プレビューワの構成を概略的に示している。このモーション・プレビューワは、例えば、プロジェクト・ウィンドウにツリー表示されたモーション・ファイルをダブルクリックすることによって開かれる。
【0355】
モーション・プレビューワ上では、モーションをプレビューするとともに、アクション編集ウィンドウにペーストするために、ポーズをコピーすることができる。
【0356】
モーション・プレビューワでは、モーションを構成する1以上のキーフレームすなわちポーズのサムネイルを表示するようになっている。キーフレームの配列は、例えば、モーション再生時の時系列に従う。
【0357】
モーション・プレビューワ内のキーフレームはアクション編集ウィンドウにドラッグすることができる。また、プレビュー中のモーションを構成するキーフレーム数が多くてウィンドウ内に収まらない場合には、水平スクロールするようにする。
【0358】
[追補]
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。
【0359】
本実施例では、イヌを模した4足歩行を行うペット型ロボットを例に挙げて本発明に係るオーサリング・システムについて詳解したが、本発明の要旨はこれに限定されない。例えば、ヒューマノイド・ロボットのような2足の脚式移動ロボットや、あるいは脚式以外の移動型ロボットに対しても、同様に本発明を適用することができることを充分理解されたい。
【0360】
また、本明細書の[特許請求の範囲]の欄に記載される「多関節構造体」は、脚式ロボットを始めとする多関節型ロボットのような物理的な機械装置には限定されない。例えば、コンピュータ・グラフィックスにより生成されるキャラクタを用いたアニメーションの動作シーケンスの作成・編集のために、本発明に係るオーサリング・システムを適用することも可能である。
【0361】
要するに、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、冒頭に記載した特許請求の範囲の欄を参酌すべきである。
【0362】
【発明の効果】
以上詳記したように、本発明によれば、ロボットの所定の動作パターンを記述する一連のコマンド/データの作成・編集を支援することができる、優れたオーサリング・システム及びオーサリング方法を提供することができる。
【0363】
また、本発明によれば、ロボットの動作状態を規定する部品の集合を用いて動作パターンの作成・編集を支援することができる、優れたオーサリング・システム及びオーサリング方法を提供することができる。
【0364】
また、本発明によれば、各部品をコンピュータ・ディスプレイ上に配置して動作パターンの作成・編集を支援することができる、優れたオーサリング・システム及びオーサリング方法を提供することができる。
【0365】
本発明に係るオーサリング・システム及びオーサリング方法によれば、モーション・データ、サウンド・データ、LED動作データなど、移動ロボットのアクションを構成する各時系列データを、2次元的なタイムライン形式のタイム・テーブル上で時間軸に沿って配置して表示するようにしている。したがって、各時系列データ間での同期を視覚的に確認しながら作成・編集することができる、効率的で直感的に分かり易いアクション編集の作業環境を提供することができる。
【0366】
本発明に係るオーサリング・システム及びオーサリング方法によれば、ロボットを始めとする多関節構造体を新しい遊びとして扱うことができるツールを提供することができる。本発明によれば、コンピュータ・プログラミングに関する高度な知識がなくとも、ロボットを始めとする多関節構造体の行動をプログラムすることができ、簡単にコンテンツを作成することができる。例えば、ユーザは、多関節構造体を表現するためのツールとして使用することができ、言い換えれば、ロボットが提供するワールドを拡張することができる。
【0367】
本発明に係るオーサリング・システム及びオーサリング方法によれば、ユーザはGUI操作を介して多関節構造体の行動シーケンスに関するプログラミングを行うことができる。さらに、ライブラリを豊富に取り揃えることによって、GUI画面上でのプログラミング作業をさらに簡単で効率的なものにすることができる。
【0368】
ロボットの行動シーケンスすなわちビヘイビアは、モーション、サウンド、及びLED動作という各コンテンツを統合することによって構成される。本発明によれば、これら各コンテンツの編集画面にタイムラインを利用することによって、コンテンツ間の同期を容易にとることができる作業環境を提供することができる。本発明に係るGUI編集画面上では、各コンテンツは、個々のデータとして処理することができる他、他のコンテンツと統合した形式すなわちアクションの形式でも扱うことができる。
【図面の簡単な説明】
【図1】本発明を実施に供される四肢による脚式歩行を行う移動ロボット1の外観構成を示した図である。
【図2】移動ロボット1の電気・制御系統の構成図を模式的に示した図である。
【図3】制御部20の構成をさらに詳細に示した図である。
【図4】ホスト・コンピュータ100のハードウェア構成例を模式的に示した図である。
【図5】本実施例に係るオーサリング・システムの全体構成を模式的に示した図である。
【図6】プロジェクト・ウィンドウを示した図である。
【図7】プロジェクト・ウィンドウ内のメニュー「ファイル」のサブメニュー項目を示した図である。
【図8】プロジェクト・ウィンドウ内のメニュー「素材」のサブメニュー項目を示した図である。
【図9】アクション編集ウィンドウを示した図である。
【図10】アクション編集ウィンドウ内のメニュー「ファイル」のサブメニュー項目を示した図である。
【図11】アクション編集ウィンドウ内のメニュー「編集」のサブメニュー項目を示した図である。
【図12】アクション編集ウィンドウ内のメニュー「素材」のサブメニュー項目を示した図である。
【図13】キーフレーム・チャンネルを開いた状態(キーフレーム詳細チャンネル)のアクション編集ウィンドウを示した図である。
【図14】モーション・チャンネルを開いた状態(モーション詳細チャンネル)のアクション編集ウィンドウを示した図である。
【図15】MIDI形式のサウンド・ファイルを編集するためのサウンド詳細ウィンドウを示した図である。
【図16】MIDI形式用のサウンド詳細ウィンドウ内のメニュー「ファイル」のサブメニュー項目を示した図である。
【図17】MIDI形式用のサウンド詳細ウィンドウ内のメニュー「編集」のサブメニュー項目を示した図である。
【図18】MIDI形式用のサウンド詳細ウィンドウ内のメニュー「設定」のサブメニュー項目を示した図である。
【図19】WAVE形式のサウンド・ファイルを表示するためのサウンド詳細ウィンドウの構成を概略的に示した図である。
【図20】WAVE形式用のサウンド詳細ウィンドウ内のメニュー「ファイル」のサブメニュー項目を示した図である。
【図21】WAVE形式用のサウンド詳細ウィンドウ内のメニュー「編集」のサブメニュー項目を示した図である。
【図22】LED動作ファイルを表示するためのLED詳細ウィンドウの構成を概略的に示した図である。
【図23】LED詳細ウィンドウ内のメニュー「ファイル」のサブメニュー項目を示した図である。
【図24】LED詳細ウィンドウ内のメニュー「編集」のサブメニュー項目を示した図である。
【図25】アクション編集ウィンドウで編集されたアクションをモニタするためのプレビュー・ウィンドウの構成を概略的に示した図である。
【図26】移動ロボット1の3DポーズをGUI操作により編集するためのポーズ・ウィンドウの構成を概略的に示した図である。
【図27】実機上で直接教示した内容をポーズ・ウィンドウ上でプレビューするための処理手順を示したフローチャートである。
【図28】モーションをプレビューするためのモーション・プレビューワの構成を概略的に示した図である。
【図29】オーサリング・システムの機能構成を示したブロック図である。
【符号の説明】
1…移動ロボット
2…胴体部ユニット
3…頭部ユニット
4…尻尾
6A〜6D…脚部ユニット
7…首関節
8…尻尾関節
9A〜9D…大腿部ユニット
10A〜10D…脛部ユニット
11A〜11D…股関節
12A〜12D…膝関節
15…CCDカメラ
16…マイクロフォン
17…スピーカ
18…タッチセンサ
19…LEDインジケータ
20…制御部
21…CPU
22…RAM
23…ROM
24…不揮発メモリ
25…インターフェース
26…無線通信インターフェース
27…ネットワーク・インターフェース・カード
28…バス
29…キーボード
40…入出力部
50…駆動部
51…モータ
52…エンコーダ
53…ドライバ

Claims (32)

  1. 複数の時系列データの組み合わせからなる多関節構造体のアクションの作成・編集を支援するためのオーサリング・システムであって、
    前記アクションは、多関節構造体の各関節の時系列的な動作を記述したモーション・データ、アクションの再生と時間的に同期して音声出力されるサウンド・データを含む、複数の時系列データで構成され、
    ユーザからコマンドやデータを入力するユーザ入力部と、
    横方向に設定された時間軸に沿って前記モーション・データ並びに前記サウンド・データの各内容をそれぞれ表示するためのモーション・チャンネル、サウンド・チャンネルを含む、アクションを構成する各時系列データをそれぞれ横方向に設定された時間軸に沿って表示する各時系列データ表示チャンネルを、前記時間軸上で同期するように縦方向に配列した編集領域を提示するユーザ提示部と、
    アクションを構成する前記複数の時系列データの各々に設けられた、前記ユーザ提示部を介したユーザ入力に基づいて該当する時系列データを作成又は編集する時系列データ編集部と、
    を具備することを特徴とするオーサリング・システム。
  2. 前記モーション・データは、所定のポーズをとった多関節構造体を表現したキーフレームを時間軸上に2以上配置することで各キーフレーム間を滑らかにつなぐような多関節構造体の各関節の時系列的な動作を規定したデータである、
    ことを特徴とする請求項1に記載のオーサリング・システム。
  3. 前記サウンド・データはMIDI(Musical Instrumental Digital Interface)形式又はWAVE形式で記述される、ことを特徴とする請求項1に記載のオーサリング・システム。
  4. アクションを構成する時系列データの1つとして、アクションの再生と時間的に同期して表示出力される表示インジケータの点灯動作並びに消滅動作を記述したインジケータ表示データをさらに含む、
    ことを特徴とする請求項1に記載のオーサリング・システム。
  5. 前記インジケータ表示データはMIDI(Musical Instrumental Digital Interface)形式で記述される、
    ことを特徴とする請求項4に記載のオーサリング・システム。
  6. 前記ユーザ提示部が提示する編集領域は、時間軸を実時間表示する目盛で構成される時間ルーラを含む、
    ことを特徴とする請求項1に記載のオーサリング・システム。
  7. 前記ユーザ提示部が提示する編集領域は、前記時間ルーラによって規定される該当時刻を示すための縦方向に走る1以上の時刻表示ラインを備える、
    ことを特徴とする請求項に記載のオーサリング・システム。
  8. 前記ユーザ提示部が提示する編集領域は、前記時間ルーラによって規定される時間軸上の現在時刻を示すための縦方向に走るカレント時刻表示ラインを備え、
    前記カレント時刻表示ラインは前記時間ルーラ上でユーザ操作された位置に移動する、
    ことを特徴とする請求項に記載のオーサリング・システム。
  9. 前記ユーザ提示部が提示する編集領域は、現在時刻における多関節構造体の動きをプレビューする表示ウィンドウを備える、
    ことを特徴とする請求項に記載のオーサリング・システム。
  10. 前記モーション・データは、所定のポーズをとった多関節構造体を表現したキーフレームを時間軸上に2以上配置することで各キーフレーム間を滑らかにつなぐような多関節構造体の各関節の時系列的な動作を規定したデータであり、
    前記ユーザ提示部が提示する編集領域は、前記時間ルーラが規定する時間軸に従って各キーフレーム又はそのサムネイルを表示するためのキーフレーム・チャンネルをさらに備える、
    ことを特徴とする請求項に記載のオーサリング・システム。
  11. 前記キーフレーム・チャンネル内でのキーフレーム又はそのサムネイルのドラッグ操作に追従してキーフレームの時刻を変更する、
    ことを特徴とする請求項10に記載のオーサリング・システム。
  12. 前記キーフレーム・チャンネル内でのキーフレーム又はそのサムネイルのユーザ選択動作に応答して、該当するポーズを編集するポーズ編集画面を起動する、
    ことを特徴とする請求項10に記載のオーサリング・システム。
  13. 前記モーション・チャンネルは、多関節構造体の各関節の時系列的な動作を表す各タイミングチャートを縦方向に配列してなる、
    ことを特徴とする請求項に記載のオーサリング・システム。
  14. 前記モーション・チャンネル内でのタイミングチャート上のドラッグ操作に追従して、該当する時刻における関節の動作を変更する、
    ことを特徴とする請求項13に記載のオーサリング・システム。
  15. アクションを構成する時系列データの1つとして、アクションの再生と時間的に同期して表示出力される表示インジケータの点灯動作並びに消滅動作を記述したインジケータ表示データがさらに含まれ、
    前記ユーザ提示部が提示する編集領域は、時間ルーラが規定する時間軸に沿ってインジケータ表示データの内容を表示するための表示インジケータ・チャンネルをさらに備える、
    ことを特徴とする請求項に記載のオーサリング・システム。
  16. 前記ユーザ提示部は時間ルーラが規定する時間軸に沿ってサウンドの内容を表示・編集するためのサウンド編集領域をさらに表示する、
    ことを特徴とする請求項1に記載のオーサリング・システム。
  17. 前記サウンド編集領域は、ピアノ鍵盤と時間軸方向の基本グリッドによって構成されるスコア・チャンネルを含み、
    時間軸の基準となる音長と、ピアノ・キーの高さによってスコアが構成され、
    前記スコア・チャンネル上では、所望の時刻並びに音階に対応するセル上に音符に相当する色を配色することによって音を編集する、
    ことを特徴とする請求項16に記載のオーサリング・システム。
  18. 前記サウンド編集領域は、時間軸に沿って各音のベロシティの強さを表示するベロシティ・チャンネルを含むこと、
    を特徴とする請求項16に記載のオーサリング・システム。
  19. 前記ユーザ提示部は前記時間ルーラが規定する時間軸に沿ってインジケータ表示データの内容を表示・編集するための表示インジケータ編集領域をさらに表示する、
    ことを特徴とする請求項15に記載のオーサリング・システム。
  20. 前記表示インジケータ編集領域は、表示インジケータを配置した部位のリストと時間軸方向の基本グリッドによって構成されスコア・チャンネルを含み、
    前記スコア・チャンネル上で、時間軸上に各部位の表示インジケータの点灯状況を表示することによって各部位リストのスコアが編集される、
    ことを特徴とする請求項19に記載のオーサリング・システム。
  21. 前記ユーザ提示部は時系列データ編集部により編集された各時系列データに基づいて生成される多関節構造体のアクションを視覚的に確認するためのプレビュー・ウィンドウをさらに表示する、
    ことを特徴とする請求項1に記載のオーサリング・システム。
  22. 前記プレビュー・ウィンドウは、前記モーション・データに基づいて生成される多関節構造体の動きを3次元表示する3Dビュー領域を備える、
    ことを特徴とする請求項21に記載のオーサリング・システム。
  23. アクションを構成する時系列データの1つは、アクションの再生と時間的に同期して表示出力される表示インジケータの点灯動作並びに消滅動作を記述したインジケータ表示データであり、
    前記プレビュー・ウィンドウは、インジケータ表示データに基づく表示インジケータの動作を他の時系列データのプレビューと同期して表示するための表示インジケータ動作プレビュー領域を備える、
    ことを特徴とする請求項21に記載のオーサリング・システム。
  24. 前記ユーザ提示部は多関節構造体のポーズをGUI操作により編集するためのポーズ・ウィンドウをさらに表示する、
    ことを特徴とする請求項1に記載のオーサリング・システム。
  25. 前記ポーズ・ウィンドウは、多関節構造体を展開平面図上で表示して編集可能部位のユーザ選択を受容する実体指定領域を含む、
    ことを特徴とする請求項24に記載のオーサリング・システム。
  26. 前記ポーズ・ウィンドウは、多関節構造体の編集可能部位とその設定値をリスト表示するリスト指定領域を含む、
    ことを特徴とする請求項24に記載のオーサリング・システム。
  27. 前記ポーズ・ウィンドウは、多関節構造体の各編集可能部位の設定部位名称、設定値、設定可能最小値並びに最大値を一覧表示する設定値領域を含む、
    ことを特徴とする請求項24に記載のオーサリング・システム。
  28. 前記ポーズ・ウィンドウは、3Dグラフィックスにより生成された多関節構造体の全身画像を3D表示するとともに該3D表示上で編集可能部位のユーザ選択を受容する3D表示領域を含む、
    ことを特徴とする請求項24に記載のオーサリング・システム。
  29. 多関節構造体のアクションを構成する時系列データを外部から入力するデータ入力手段をさらに備え、
    前記ポーズ・ウィンドウは、前記データ入力手段より入力されたデータに基づいて生成されるポーズを表示する、
    ことを特徴とする請求項24に記載のオーサリング・システム。
  30. 前記ユーザ提示部は、モーションを構成する1以上のキーフレーム又はそのサムネイルをモーション再生時の時系列に従って配列したモーション・プレビュー・ウィンドウをさらに表示する、
    ことを特徴とする請求項に記載のオーサリング・システム。
  31. 複数の時系列データの組み合わせからなる多関節構造体のアクションの作成・編集を支援するためのオーサリング方法であって、
    前記アクションは、多関節構造体の各関節の時系列的な動作を記述したモーション・データ、アクションの再生と時間的に同期して音声出力されるサウンド・データを含む、複数の時系列データで構成され、
    前記オーサリング方法は、
    横方向に設定された時間軸に沿って前記モーション・データ並びに前記サウンド・データの各内容をそれぞれ表示するためのモーション・チャンネル、サウンド・チャンネルを含む、アクションを構成する各時系列データをそれぞれ横方向に設定された時間軸に沿って表示する各時系列データ表示チャンネルを、前記時間軸上で同期するように縦方向に配列した編集領域を提示するユーザ提示ステップと、
    アクションを構成する前記複数の時系列データの各々について、前記ユーザ提示ステップによる編集領域を介したユーザ入力に基づいて該当する時系列データを作成又は編集する時系列データ編集ステップと、
    を有することを特徴とするオーサリング方法。
  32. 複数の時系列データの組み合わせからなる多関節構造体のアクションの作成・編集を支援するための処理をコンピュータ・システム上で実行するように記述されたコンピュータ・ソフトウェアをコンピュータ可読形式で物理的に格納した記憶媒体であって、
    前記アクションは、多関節構造体の各関節の時系列的な動作を記述したモーション・データ、アクションの再生と時間的に同期して音声出力されるサウンド・データを含む、複数の時系列データで構成され、
    前記コンピュータを、
    ユーザからコマンドやデータを入力するユーザ入力部、
    横方向に設定された時間軸に沿って前記モーション・データ並びに前記サウンド・データの各内容をそれぞれ表示するためのモーション・チャンネル、サウンド・チャンネルを含む、アクションを構成する各時系列データをそれぞれ横方向に設定された時間軸に沿って表示する各時系列データ表示チャンネルを、前記時間軸上で同期するように縦方向に配列した編集領域を提示するユーザ提示部、
    アクションを構成する前記複数の時系列データの各々に設けられた、前記ユーザ提示部を介したユーザ入力に基づいて該当する時系列データを作成又は編集する時系列データ編集部、
    として機能させるコンピュータ・ソフトウェアを格納する記憶媒体。
JP2000295719A 2000-09-28 2000-09-28 オーサリング・システム及びオーサリング方法、並びに記憶媒体 Expired - Lifetime JP4765155B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2000295719A JP4765155B2 (ja) 2000-09-28 2000-09-28 オーサリング・システム及びオーサリング方法、並びに記憶媒体
EP01970302A EP1321248A4 (en) 2000-09-28 2001-09-28 AUTHOR SYSTEM AND AUTHOR METHOD, AND MEMORY MEDIUM
US10/130,935 US6718231B2 (en) 2000-09-28 2001-09-28 Authoring system and authoring method, and storage medium
CN01802941A CN1392824A (zh) 2000-09-28 2001-09-28 编辑系统和方法及存储介质
PCT/JP2001/008602 WO2002026450A1 (fr) 2000-09-28 2001-09-28 Systeme d'auteur et procede d'auteur, et support de memorisation
KR1020027006629A KR20020056949A (ko) 2000-09-28 2001-09-28 오서링 시스템 및 오서링 방법과 기억 매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000295719A JP4765155B2 (ja) 2000-09-28 2000-09-28 オーサリング・システム及びオーサリング方法、並びに記憶媒体

Publications (3)

Publication Number Publication Date
JP2002103258A JP2002103258A (ja) 2002-04-09
JP2002103258A5 JP2002103258A5 (ja) 2007-11-08
JP4765155B2 true JP4765155B2 (ja) 2011-09-07

Family

ID=18778099

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000295719A Expired - Lifetime JP4765155B2 (ja) 2000-09-28 2000-09-28 オーサリング・システム及びオーサリング方法、並びに記憶媒体

Country Status (6)

Country Link
US (1) US6718231B2 (ja)
EP (1) EP1321248A4 (ja)
JP (1) JP4765155B2 (ja)
KR (1) KR20020056949A (ja)
CN (1) CN1392824A (ja)
WO (1) WO2002026450A1 (ja)

Families Citing this family (139)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8944070B2 (en) 1999-04-07 2015-02-03 Intuitive Surgical Operations, Inc. Non-force reflecting method for providing tool force information to a user of a telesurgical system
US20030009664A1 (en) * 2001-06-28 2003-01-09 Eastman Kodak Company Method and player for authenticating playback of animated content
US7426717B1 (en) * 2001-11-27 2008-09-16 Adobe Systems Incorporated System and method for debugging files in a runtime environment
JP4194272B2 (ja) * 2001-12-28 2008-12-10 キヤノン株式会社 動画像管理装置及び方法
JP2004001162A (ja) * 2002-03-28 2004-01-08 Fuji Photo Film Co Ltd ペットロボット充電システム、受取装置、ロボット、及びロボットシステム
JP4081747B2 (ja) * 2002-05-17 2008-04-30 技研株式会社 ロボットの駆動制御方法と、その装置
JP3860519B2 (ja) * 2002-09-02 2006-12-20 株式会社バンダイ 運動体制御システム、運動体及びそのプログラム
US7024277B2 (en) * 2002-11-11 2006-04-04 Alfred Schurmann Determination and control of activities of an emotional system
JP2004291174A (ja) * 2003-03-27 2004-10-21 Denso Corp ロボット、ロボット対話装置及びプログラム
JP2005046926A (ja) * 2003-07-30 2005-02-24 Toshiba Corp サービスロボットシステム、主動型ロボット及び従動型ロボット
US7689319B2 (en) 2003-08-12 2010-03-30 Advanced Telecommunications Research Institute International Communication robot control system
US20050081138A1 (en) * 2003-09-25 2005-04-14 Voss James S. Systems and methods for associating an image with a video file in which the image is embedded
EP1530138A1 (en) * 2003-11-10 2005-05-11 Robert Bosch Gmbh Generic measurement and calibration interface for development of control software
JP2005148789A (ja) * 2003-11-11 2005-06-09 Fanuc Ltd 音声入力によるロボット教示プログラム編集装置
JP4244812B2 (ja) * 2004-01-16 2009-03-25 ソニー株式会社 行動制御システム及びロボット装置の行動制御方法
JP4516344B2 (ja) * 2004-04-12 2010-08-04 本田技研工業株式会社 脚式移動ロボット
US9008835B2 (en) * 2004-06-24 2015-04-14 Irobot Corporation Remote control scheduler and method for autonomous robotic device
US7588105B2 (en) * 2004-10-01 2009-09-15 Applied Minds, Inc. Virtual-wheeled vehicle
US7543663B2 (en) 2004-10-01 2009-06-09 Applied Minds, Inc. Bimodal conveyance mechanism
US8000837B2 (en) * 2004-10-05 2011-08-16 J&L Group International, Llc Programmable load forming system, components thereof, and methods of use
US9789608B2 (en) 2006-06-29 2017-10-17 Intuitive Surgical Operations, Inc. Synthetic representation of a surgical robot
JP2007030060A (ja) * 2005-07-22 2007-02-08 Honda Motor Co Ltd 移動ロボットの制御装置
EP1762345A1 (en) * 2005-09-08 2007-03-14 Asea Brown Boveri Ab An industrial robot system comprising a control unit and an external computer
US20070098281A1 (en) * 2005-10-31 2007-05-03 International Business Machines Corporation Damping rotational vibration in a multi-drive tray
US8607147B2 (en) * 2005-12-09 2013-12-10 International Business Machines Corporation System and methods for previewing alternative compositions and arrangements when composing a strictly-structured flow diagram
US20070168975A1 (en) * 2005-12-13 2007-07-19 Thomas Kessler Debugger and test tool
TWI312992B (en) * 2005-12-15 2009-08-01 Ind Tech Res Inst Video disc containing description data structure for displaying a menu and method for selecting an option of the menu from the video disc
US8062211B2 (en) 2006-06-13 2011-11-22 Intuitive Surgical Operations, Inc. Retrograde instrument
US20090192523A1 (en) 2006-06-29 2009-07-30 Intuitive Surgical, Inc. Synthetic representation of a surgical instrument
US9718190B2 (en) 2006-06-29 2017-08-01 Intuitive Surgical Operations, Inc. Tool position and identification indicator displayed in a boundary area of a computer display screen
US10008017B2 (en) 2006-06-29 2018-06-26 Intuitive Surgical Operations, Inc. Rendering tool information as graphic overlays on displayed images of tools
US10258425B2 (en) 2008-06-27 2019-04-16 Intuitive Surgical Operations, Inc. Medical robotic system providing an auxiliary view of articulatable instruments extending out of a distal end of an entry guide
US20080004749A1 (en) * 2006-06-30 2008-01-03 Honeywell International, Inc. System and method for generating instructions for a robot
US20080082214A1 (en) * 2006-10-03 2008-04-03 Sabrina Haskell Method for animating a robot
KR100772175B1 (ko) * 2006-10-23 2007-11-01 한국전자통신연구원 네트워크 로봇 시스템 및 네트워크 로봇 시스템에서의 통신방법
JP2008206668A (ja) * 2007-02-26 2008-09-11 Taya Engineering Kk ラジコン模型
JP2008254074A (ja) * 2007-03-30 2008-10-23 Sega Corp ロボットのモーション編集装置及びそのプログラム
US9138129B2 (en) 2007-06-13 2015-09-22 Intuitive Surgical Operations, Inc. Method and system for moving a plurality of articulated instruments in tandem back towards an entry guide
US9089256B2 (en) 2008-06-27 2015-07-28 Intuitive Surgical Operations, Inc. Medical robotic system providing an auxiliary view including range of motion limitations for articulatable instruments extending out of a distal end of an entry guide
US8620473B2 (en) 2007-06-13 2013-12-31 Intuitive Surgical Operations, Inc. Medical robotic system with coupled control modes
US9084623B2 (en) 2009-08-15 2015-07-21 Intuitive Surgical Operations, Inc. Controller assisted reconfiguration of an articulated instrument during movement into and out of an entry guide
US9469034B2 (en) 2007-06-13 2016-10-18 Intuitive Surgical Operations, Inc. Method and system for switching modes of a robotic system
JP5181541B2 (ja) * 2007-06-15 2013-04-10 富士通株式会社 ロボットシステム、エディタ端末、およびエディタプログラム
FR2918477A1 (fr) * 2007-07-04 2009-01-09 Aldebaran Robotics Soc Par Act Procede d'edition de mouvements d'un robot
US8353767B1 (en) * 2007-07-13 2013-01-15 Ganz System and method for a virtual character in a virtual world to interact with a user
GB0714148D0 (en) * 2007-07-19 2007-08-29 Lipman Steven interacting toys
US8689139B2 (en) * 2007-12-21 2014-04-01 Adobe Systems Incorporated Expandable user interface menu
US8864652B2 (en) 2008-06-27 2014-10-21 Intuitive Surgical Operations, Inc. Medical robotic system providing computer generated auxiliary views of a camera instrument for controlling the positioning and orienting of its tip
CN101650553B (zh) * 2008-08-11 2013-04-24 悠进机器人股份公司 控制智能机器人和制作机器人内容的制作工具的应用方法
FR2946160B1 (fr) * 2009-05-26 2014-05-09 Aldebaran Robotics Systeme et procede pour editer et commander des comportements d'un robot mobile.
US9492927B2 (en) 2009-08-15 2016-11-15 Intuitive Surgical Operations, Inc. Application of force feedback on an input device to urge its operator to command an articulated instrument to a preferred pose
US8918211B2 (en) 2010-02-12 2014-12-23 Intuitive Surgical Operations, Inc. Medical robotic system providing sensory feedback indicating a difference between a commanded state and a preferred pose of an articulated instrument
KR100968944B1 (ko) * 2009-12-14 2010-07-14 (주) 아이알로봇 로봇 동기화 장치 및 그 방법
JP5645618B2 (ja) * 2009-12-24 2014-12-24 キヤノン株式会社 情報処理装置、情報処理方法、およびプログラム
TWI395153B (zh) * 2009-12-28 2013-05-01 Nat Univ Tsing Hua Action Mechanism and Generating Method of Mimic - level Digital Model Based on Object Feature
US9240066B2 (en) 2010-03-02 2016-01-19 Kun Yu Methods and apparatuses for facilitating skeletal animation
TWI416289B (zh) * 2010-05-28 2013-11-21 Compal Communications Inc 自動機械裝置及其控制方法
CN102279569B (zh) * 2010-06-08 2013-05-08 华宝通讯股份有限公司 机械装置动作编辑系统及其方法
CN102279570A (zh) * 2010-06-10 2011-12-14 华宝通讯股份有限公司 自动机械装置及其控制方法
TWI478798B (zh) * 2010-06-18 2015-04-01 Compal Electronics Inc 自動機械裝置及其控制方法
FR2963132A1 (fr) * 2010-07-23 2012-01-27 Aldebaran Robotics Robot humanoide dote d'une interface de dialogue naturel, methode d'utilisation et de programmation de ladite interface
US9015093B1 (en) 2010-10-26 2015-04-21 Michael Lamport Commons Intelligent control with hierarchical stacked neural networks
US8775341B1 (en) 2010-10-26 2014-07-08 Michael Lamport Commons Intelligent control with hierarchical stacked neural networks
KR101714791B1 (ko) * 2010-12-01 2017-03-09 한국전자통신연구원 원격 함수호출 방식 기반 네트워크 로봇 시스템의 서비스를 제어하기 위한 장치 및 그 방법
SG182033A1 (en) * 2011-01-03 2012-07-30 Katotec Pte Ltd Singapore Robot controllers and content files therefor
JP5370376B2 (ja) * 2011-01-13 2013-12-18 横河電機株式会社 機器情報表示装置、機器情報表示プログラム、及び記録媒体
US10104333B2 (en) 2011-06-02 2018-10-16 Gree, Inc. Vector data conversion output device, vector data conversion output method, and vector data conversion output program
US9566710B2 (en) 2011-06-02 2017-02-14 Brain Corporation Apparatus and methods for operating robotic devices using selective state space training
JP5479541B2 (ja) * 2011-08-23 2014-04-23 パナソニック株式会社 パラレルリンクロボットおよびその動作教示方法
TW201322752A (zh) * 2011-11-17 2013-06-01 Chiuan Yan Technology Co Ltd 雙向同步操控位移裝置
US8843235B2 (en) * 2012-01-13 2014-09-23 Toyota Motor Engineering & Manufacturing North America, Inc. Robots, computer program products, and methods for trajectory plan optimization
US8988578B2 (en) 2012-02-03 2015-03-24 Honeywell International Inc. Mobile computing device with improved image preview functionality
US20130215144A1 (en) * 2012-02-20 2013-08-22 Sony Corporation Display control device and display control method
CN103456150A (zh) * 2012-05-30 2013-12-18 华硕电脑股份有限公司 遥控系统及其遥控方法
CN102915755A (zh) * 2012-09-07 2013-02-06 博康智能网络科技股份有限公司 一种基于视频显示提取运动目标到时间轴上的方法
JP5582427B2 (ja) * 2012-12-18 2014-09-03 株式会社安川電機 教示データ作成装置、ロボットシステム、及び教示データ作成方法
US10507066B2 (en) 2013-02-15 2019-12-17 Intuitive Surgical Operations, Inc. Providing information of tools by filtering image areas adjacent to or on displayed images of the tools
US9764468B2 (en) 2013-03-15 2017-09-19 Brain Corporation Adaptive predictor apparatus and methods
US20170206064A1 (en) * 2013-03-15 2017-07-20 JIBO, Inc. Persistent companion device configuration and deployment platform
US9495788B2 (en) 2013-03-22 2016-11-15 Kt Corporation Apparatus and method for developing robot contents
KR101626966B1 (ko) * 2013-03-22 2016-06-02 주식회사 케이티 로봇 컨텐츠 저작 장치 및 방법
US9242372B2 (en) 2013-05-31 2016-01-26 Brain Corporation Adaptive robotic interface apparatus and methods
US10262462B2 (en) 2014-04-18 2019-04-16 Magic Leap, Inc. Systems and methods for augmented and virtual reality
US9384443B2 (en) 2013-06-14 2016-07-05 Brain Corporation Robotic training apparatus and methods
US9792546B2 (en) 2013-06-14 2017-10-17 Brain Corporation Hierarchical robotic controller apparatus and methods
US9314924B1 (en) 2013-06-14 2016-04-19 Brain Corporation Predictive robotic controller apparatus and methods
US9436909B2 (en) 2013-06-19 2016-09-06 Brain Corporation Increased dynamic range artificial neuron network apparatus and methods
US9296101B2 (en) 2013-09-27 2016-03-29 Brain Corporation Robotic control arbitration apparatus and methods
US9579789B2 (en) 2013-09-27 2017-02-28 Brain Corporation Apparatus and methods for training of robotic control arbitration
US9597797B2 (en) 2013-11-01 2017-03-21 Brain Corporation Apparatus and methods for haptic training of robots
US9463571B2 (en) 2013-11-01 2016-10-11 Brian Corporation Apparatus and methods for online training of robots
US9248569B2 (en) 2013-11-22 2016-02-02 Brain Corporation Discrepancy detection apparatus and methods for machine learning
US9358685B2 (en) 2014-02-03 2016-06-07 Brain Corporation Apparatus and methods for control of robot actions based on corrective user inputs
EP3102366B1 (en) * 2014-02-05 2018-06-27 ABB Schweiz AG A system and method for creating and editing a playlist defining motions of a plurality of robots cooperatively performing a show
US9346167B2 (en) 2014-04-29 2016-05-24 Brain Corporation Trainable convolutional network apparatus and methods for operating a robotic vehicle
US9972115B2 (en) * 2014-06-12 2018-05-15 Dreamworks Animation L.L.C. Timeline tool for producing computer-generated animations
US9904500B2 (en) * 2014-06-18 2018-02-27 David Milton Durlach Choreography of kinetic artwork via video
JP5671644B2 (ja) * 2014-06-18 2015-02-18 グリー株式会社 動画出力装置、動画出力方法、及びプログラム
US9895804B1 (en) 2014-08-26 2018-02-20 Boston Dynamics, Inc. Failure mode
US9630318B2 (en) 2014-10-02 2017-04-25 Brain Corporation Feature detection apparatus and methods for training of robotic navigation
JP5756558B2 (ja) * 2014-12-19 2015-07-29 グリー株式会社 動画出力装置、動画出力方法、及びプログラム
CN107430781B (zh) * 2015-01-30 2021-09-17 株式会社电通 计算机图形的数据结构、信息处理装置、信息处理方法以及信息处理系统
US9717387B1 (en) 2015-02-26 2017-08-01 Brain Corporation Apparatus and methods for programming and training of robotic household appliances
CN106292407A (zh) * 2015-06-02 2017-01-04 兆利丰股份有限公司 内建图形用户界面描述于物联网装置的自动控制方法
JP6684556B2 (ja) 2015-08-28 2020-04-22 株式会社電通 データ変換装置、ロボット、プログラム及び情報処理方法
DE102015116086A1 (de) * 2015-09-23 2017-03-23 Universität Bayreuth Robotersteuerung
US10565889B2 (en) 2016-03-21 2020-02-18 Ying Chieh Mitchell Method and system for authoring animated human movement examples with scored movements
CN105666526A (zh) * 2016-03-22 2016-06-15 北京百度网讯科技有限公司 基于人工智能的机器人调试系统
US10241514B2 (en) 2016-05-11 2019-03-26 Brain Corporation Systems and methods for initializing a robot to autonomously travel a trained route
US20170329503A1 (en) * 2016-05-13 2017-11-16 Google Inc. Editing animations using a virtual reality controller
US11185989B2 (en) 2016-06-06 2021-11-30 Sony Corporation Virtual creature control system and virtual creature control method
US9987752B2 (en) 2016-06-10 2018-06-05 Brain Corporation Systems and methods for automatic detection of spills
US10282849B2 (en) 2016-06-17 2019-05-07 Brain Corporation Systems and methods for predictive/reconstructive visual object tracker
CN106131374B (zh) * 2016-06-29 2019-07-19 上海未来伙伴机器人有限公司 一种机器人文件使用、存储方法及系统
US10016896B2 (en) 2016-06-30 2018-07-10 Brain Corporation Systems and methods for robotic behavior around moving bodies
US10366499B2 (en) * 2016-09-23 2019-07-30 Robotis Co., Ltd. Device, method, and computer-readable recording medium for editing and playing robot motion
US10274325B2 (en) 2016-11-01 2019-04-30 Brain Corporation Systems and methods for robotic mapping
US10001780B2 (en) 2016-11-02 2018-06-19 Brain Corporation Systems and methods for dynamic route planning in autonomous navigation
US10723018B2 (en) 2016-11-28 2020-07-28 Brain Corporation Systems and methods for remote operating and/or monitoring of a robot
JP6295313B1 (ja) * 2016-12-02 2018-03-14 株式会社ドワンゴ 情報処理装置、情報処理方法およびプログラム
US10377040B2 (en) 2017-02-02 2019-08-13 Brain Corporation Systems and methods for assisting a robotic apparatus
US10852730B2 (en) 2017-02-08 2020-12-01 Brain Corporation Systems and methods for robotic mobile platforms
CN106985150A (zh) * 2017-03-21 2017-07-28 深圳泰坦创新科技有限公司 控制机器人动作的方法和装置
CN106945036A (zh) * 2017-03-21 2017-07-14 深圳泰坦创新科技有限公司 机器人动作生成方法和装置
US10293485B2 (en) 2017-03-30 2019-05-21 Brain Corporation Systems and methods for robotic path planning
JP6708581B2 (ja) * 2017-04-07 2020-06-10 ライフロボティクス株式会社 教示装置、表示装置、教示プログラム及び表示プログラム
CN107168221A (zh) * 2017-04-11 2017-09-15 北京智能管家科技有限公司 机器人行为表达方法及计算机可读介质
WO2018188001A1 (zh) * 2017-04-12 2018-10-18 曾华均 无人机的飞行动作编辑及编队控制系统和控制方法
CN107363835B (zh) * 2017-08-06 2019-11-08 北京镁伽机器人科技有限公司 运动控制部件的配置方法、装置、介质和机器人系统
US10635102B2 (en) * 2017-10-17 2020-04-28 Steering Solutions Ip Holding Corporation Driver re-engagement assessment system for an autonomous vehicle
US10754318B2 (en) 2017-12-21 2020-08-25 X Development Llc Robot interaction with objects based on semantic information associated with embedding spaces
US11097418B2 (en) 2018-01-04 2021-08-24 X Development Llc Grasping of an object by a robot based on grasp strategy determined using machine learning model(s)
CN112136141A (zh) * 2018-03-23 2020-12-25 谷歌有限责任公司 基于自由形式自然语言输入控制机器人
JP7069971B2 (ja) * 2018-03-30 2022-05-18 セイコーエプソン株式会社 制御装置、ロボット、およびロボットシステム
WO2020059342A1 (ja) * 2018-09-21 2020-03-26 日本電産株式会社 ロボットシミュレータ
JP2021083488A (ja) * 2019-11-25 2021-06-03 株式会社バンダイ プログラム及び構造体制御システム
CN112959319A (zh) * 2021-01-19 2021-06-15 穆特科技(武汉)股份有限公司 一种快速编辑多自由度机器人动作数据的装置及方法
JP2023142042A (ja) * 2022-03-24 2023-10-05 エスペック株式会社 設定装置、プログラム、環境形成装置、及び設定方法
CN114710704B (zh) * 2022-05-05 2023-12-12 艾迪普科技股份有限公司 一种使用时间线实时编辑三维图形与图像的方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6005589A (en) * 1990-07-12 1999-12-21 Hitachi, Ltd. Method and apparatus for representing motion of multiple-jointed object, computer graphic apparatus, and robot controller
US5594856A (en) * 1994-08-25 1997-01-14 Girard; Michael Computer user interface for step-driven character animation
JPH08249026A (ja) * 1995-03-10 1996-09-27 Fanuc Ltd ロボットを含むシステムのプログラミング方法
JP3668289B2 (ja) * 1995-05-22 2005-07-06 リコーエレメックス株式会社 ロボットの動作教示システム
US6141019A (en) * 1995-10-13 2000-10-31 James B. Roseborough Creature animation and simulation technique
IL120856A0 (en) * 1997-05-19 1997-09-30 Creator Ltd Controllable toy system operative in conjunction with a household audio entertainment player
JPH1158274A (ja) * 1997-08-22 1999-03-02 Sony Corp ロボット装置の制御システム及びロボット装置の制御方法
JP2000083194A (ja) * 1998-06-24 2000-03-21 Hitachi Denshi Ltd 映像デ―タ編集方法

Also Published As

Publication number Publication date
US20030023347A1 (en) 2003-01-30
WO2002026450A1 (fr) 2002-04-04
JP2002103258A (ja) 2002-04-09
US6718231B2 (en) 2004-04-06
EP1321248A4 (en) 2005-10-26
CN1392824A (zh) 2003-01-22
EP1321248A1 (en) 2003-06-25
KR20020056949A (ko) 2002-07-10

Similar Documents

Publication Publication Date Title
JP4765155B2 (ja) オーサリング・システム及びオーサリング方法、並びに記憶媒体
JP4670136B2 (ja) オーサリング・システム及びオーサリング方法、並びに記憶媒体
US6470235B2 (en) Authoring system and method, and storage medium used therewith
Pot et al. Choregraphe: a graphical tool for humanoid robot programming
US7219064B2 (en) Legged robot, legged robot behavior control method, and storage medium
JP2012528015A (ja) 移動ロボットの挙動を編集及び制御するためのシステムと方法
KR101106002B1 (ko) 객체에서의 행동을 생성하는 장치 및 방법
EP1072365A1 (en) Control system for a modular machine
AU700204B2 (en) Installation and method for controlling a movable apparatus
EP1610221A1 (en) Information providing device, method, and information providing system
JP2000506637A (ja) 生物アニメーションおよびシミュレーション技術
JP2005193331A (ja) ロボット装置及びその情動表出方法
JP6319772B2 (ja) リアルタイムで行われる移動ロボットの脈絡ある挙動を生成する方法およびシステム
JP2008254074A (ja) ロボットのモーション編集装置及びそのプログラム
WO2001050362A1 (fr) Systeme et procede d'achat, dispositif et procede d'acceptation de commandes et programme informatique
US20200254358A1 (en) Terminal for action robot and method of operating the same
JP2001191274A (ja) データ保持装置、ロボット装置、変更装置及び変更方法
JP2004130428A (ja) ロボット装置及びロボット装置の動作制御方法、記録媒体、並びにプログラム
KR100556151B1 (ko) 원격에서 로봇 장치를 제어하는 방법 및 장치
Duan et al. Intelligent Robot: Implementation and Applications
Redondo Verdú et al. Mixed reality for industrial robot programming
Breazeal et al. Public anemone: an organic robot creature
Saldien Development of the huggable social robot Probo: on the conceptual design and software architecture
JP2002346958A (ja) 脚式移動ロボットのための制御装置及び制御方法
Ko et al. Development of task planner for u-intelligent educational robots

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070918

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070918

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101005

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101201

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110517

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110530

R151 Written notification of patent or utility model registration

Ref document number: 4765155

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140624

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250