JP2006272537A - Robot simulator and simulation program - Google Patents
Robot simulator and simulation program Download PDFInfo
- Publication number
- JP2006272537A JP2006272537A JP2005099602A JP2005099602A JP2006272537A JP 2006272537 A JP2006272537 A JP 2006272537A JP 2005099602 A JP2005099602 A JP 2005099602A JP 2005099602 A JP2005099602 A JP 2005099602A JP 2006272537 A JP2006272537 A JP 2006272537A
- Authority
- JP
- Japan
- Prior art keywords
- robot
- model
- screen
- communication
- animation
- 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.)
- Withdrawn
Links
Images
Landscapes
- Manipulator (AREA)
Abstract
Description
この発明はロボットシミュレータおよびシミュレーションプログラムに関し、特にたとえば、少なくとも身体動作を含むコミュニケーション行動を行うコミュニケーションロボットの開発を支援する、ロボットシミュレータおよびシミュレーションプログラムに関する。 The present invention relates to a robot simulator and a simulation program, and more particularly, to a robot simulator and a simulation program that support development of a communication robot that performs communication behavior including at least body motion.
たとえば本件出願人による特許文献1には、コミュニケーションロボットに備えられる個々の行動を実行するためのプログラムである行動モジュール間の関係性を視覚化する技術が開示されている。この技術では、行動モジュール間の関係を直感的に把握することができるので、たとえば自律的な行動のための規則の作成・編集等を適切に行えるようになっている。また、その後に実際にロボットを動作させる試験を行い、その編集等の適否を確かめることができる。
この背景技術では、実際にロボットを動作させて、その編集等の適否を確かめる必要があるが、このようなロボットは比較的高価であり、複数の開発者に対して1台割り当てられる。したがって、そのような試験をするためには、複数の開発者が話し合いにより、予め決めた時間割りで、交替でロボットが使用される。このため、限られた時間で試験を行う必要があり、開発が速やかに進まず、また、開発者毎に使用目的が異なるため、使用する度にプログラムを書き換える必要があった。つまり、開発に余計な手間がかかっていた。 In this background art, it is necessary to actually operate a robot and confirm the suitability of editing or the like. However, such a robot is relatively expensive and is assigned to a plurality of developers. Therefore, in order to carry out such a test, a robot is used alternately by a plurality of developers in a predetermined time schedule through discussion. For this reason, it is necessary to perform a test in a limited time, development does not proceed quickly, and the purpose of use is different for each developer, so it is necessary to rewrite the program every time it is used. In other words, it took extra time for development.
それゆえに、この発明の主たる目的は、新規な、ロボットシミュレータおよびシミュレーションプログラムを提供することである。 Therefore, a main object of the present invention is to provide a novel robot simulator and simulation program.
この発明の他の目的は、余計な手間を省いてオフラインで開発できる、ロボットシミュレータおよびシミュレーションプログラムを提供することである。 Another object of the present invention is to provide a robot simulator and a simulation program that can be developed off-line while eliminating unnecessary work.
請求項1の発明は、少なくとも身体動作を含むコミュニケーション行動を実行するコミュニケーションロボットのロボットシミュレータであって、コミュニケーションロボットのモデルを画面表示する画面表示手段、画面表示手段に関連して設けられるポインティングデバイス、およびポインティングデバイスの入力に応じて、モデルの身体動作をアニメーション表示するアニメーション表示手段を備える、ロボットシミュレータである。
The invention of
請求項1の発明では、ロボットシミュレータは、少なくとも身振り手振りのような身体動作を含むコミュニケーション行動を実行するコミュニケーションロボットの当該コミュニケーション行動についてのシミュレーション(試験)を行う。このロボットシミュレータは、画像表示手段、ポインティングデバイス、およびアニメーション表示手段を備える。画像表示手段は、コミュニケーションロボットのモデル(CG)を画面表示する。ポインティングデバイスは、画面表示手段に関連して設けられ、このポインティングデバイスの入力に応じて、モデルの身体動作をアニメーション表示する。つまり、コミュニケーションロボットの反応動作を、シミュレーションにより、モデルに再現させる。 In the first aspect of the invention, the robot simulator performs a simulation (test) on the communication behavior of a communication robot that executes a communication behavior including at least a body motion such as gesture gesture. The robot simulator includes an image display unit, a pointing device, and an animation display unit. The image display means displays the communication robot model (CG) on the screen. The pointing device is provided in association with the screen display means, and the body motion of the model is displayed in an animation according to the input of the pointing device. That is, the reaction behavior of the communication robot is reproduced in the model by simulation.
請求項1の発明によれば、コミュニケーションロボットのモデルを画面表示し、ポインティングデバイスの操作に応じたコミュニケーション行動を、モデルのアニメーション表示により再現するので、現実のコミュニケーションロボットを用いずに、オフラインでロボットを開発することができる。このため、開発に余計な手間を省くことができる。 According to the first aspect of the present invention, the model of the communication robot is displayed on the screen, and the communication behavior according to the operation of the pointing device is reproduced by the animation display of the model. Therefore, the robot can be used offline without using the actual communication robot. Can be developed. For this reason, it is possible to save extra time for development.
請求項2の発明は請求項1に従属し、コミュニケーション行動は発話を含み、モデルの身体動作をアニメーション表示するとともに、当該身体動作に伴う発話内容を出力する出力手段をさらに備える。
The invention of claim 2 is dependent on
請求項2の発明では、コミュニケーション行動は、必要に応じて発話を含む。出力手段は、モデルの身体動作をアニメーション表示するとともに、当該身体動作に伴う内容を出力する。 In the invention of claim 2, the communication behavior includes utterance as necessary. The output means displays the animation of the body motion of the model and outputs the contents accompanying the body motion.
請求項2の発明によれば、コミュニケーションロボットの身体動作のみならず、発話内容を知ることができるため、よりリアルなロボットの反応を理解することができる。 According to the invention of claim 2, since not only the body movement of the communication robot but also the utterance content can be known, it is possible to understand a more realistic reaction of the robot.
請求項3の発明は、少なくとも身体動作を含むコミュニケーション行動を実行するコミュニケーションロボットのシミュレーションプログラムであって、コミュニケーションロボットのモデルを画面表示する画面表示ステップ、および画面表示ステップによって画面表示されたモデルの指示入力に応じて、当該モデルの身体動作をアニメーション表示するアニメーション表示ステップを実行させる、シミュレーションプログラムである。
The invention of
請求項3の発明においても、請求項1の発明と同様に、開発に余計な手間を省くことができる。
In the invention of
この発明によれば、画面表示されたコミュニケーションロボットのモデルを、ポインティングデバイスの操作に応じてアニメーション表示させるので、実際のコミュニケーションロボットを使用せずに、そのコミュニケーション行動を表現させることができる。つまり、余計な手間を省いて、オフラインで開発することができる。 According to the present invention, since the model of the communication robot displayed on the screen is displayed in an animation according to the operation of the pointing device, the communication behavior can be expressed without using the actual communication robot. In other words, it can be developed offline with no extra effort.
この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。 The above object, other objects, features and advantages of the present invention will become more apparent from the following detailed description of embodiments with reference to the drawings.
図1を参照して、この実施例のロボットシミュレータ(以下、単に「シミュレータ」という。)100は、コンピュータ102を含む。コンピュータ102は、たとえば、パーソナルコンピュータやワークステーションのような汎用のコンピュータである。したがって、図示は省略するが、コンピュータ102は、CPU、メモリ(ハードディスク、ROM、RAM)および画像処理ユニット(フレームバッファおよびZバッファを含む。)などのコンポーネントを含む。図示は省略するが、メモリには、後述するようなシミュレーション処理(図6および図7参照)を実行するために必要なプログラム(シミュレーションプログラム)およびデータ(アニメーションデータ等の画像データ)などが記憶される。また、コンピュータ102には、汎用のタッチスクリーン104およびスピーカ106が接続される。
Referring to FIG. 1, a robot simulator (hereinafter simply referred to as “simulator”) 100 of this embodiment includes a
なお、この実施例では、直接的にコミュニケーションロボット10(図2参照)を操作しているような感覚を与えるために、タッチスクリーン14を設けるようにしてある。ただし、CRTモニタやLCDのような表示器をコンピュータ102に接続して、タッチパッド、タブレット或いはコンピュータマウスのような他のポインティングデバイスを設けるようにすることもできる。かかる場合いは、マウスポインタのような指示画像を表示器に表示して、間接的にコミュニケーションロボット10を操作しているような感覚が得られる。
In this embodiment, the
このような構成のシミュレータ100では、コンピュータ102は、たとえば、図2に示すような構成のコミュニケーションロボット(以下、単に「ロボット」という。)10のモデル(CG:Computer Graphics)をタッチスクリーン104に表示する。ただし、図2に示すようなロボット10に限定される必要はなく、任意のロボットのモデルを用いることができる。そして、ロボット10の開発者がタッチスクリーン104を通してモデルに触ると、それに応じたコミュニケーション行動をモデルが表現(再現)する。ここで、コミュニケーション行動とは、ロボット10の身振り手振りのような身体動作をいい、発話を含む場合もある。このコミュニケーション行動により、ロボット10は、たとえば、人間との間でインタラクション(コミュニケーション)するのである。具体的には、ロボット10の反応として、タッチスクリーン104上のモデルが動画表示(アニメーション表示)されたり、モデルが発話する内容の音声がスピーカ106から出力されたりする。
In the
図2はロボット10の外観図であり、この図2を参照して、ロボット10は台車12を含む。この台車12の側面には、ロボット10を自律移動させる車輪14が設けられる。この車輪14は、車輪モータ(図3において参照番号「16」で示す。)によって駆動され、台車12すなわちロボット10を前後左右任意の方向に動かすことができる。図示は省略するが、この台車12の前面には、衝突センサが取り付けられ、この衝突センサは、台車12への人間や他の障害物の接触を検知する。
FIG. 2 is an external view of the
台車12の上には、人体状部18が直立するように取り付けられる。このロボット本体としての人体状部18の全身は、柔軟素材からなる皮膚20によって覆われる。人体状部18は、たとえば鉄板のような筐体(図示せず)を含み、その筐体にコンピュータやその他必要なコンポーネントを収容している。そして、皮膚20は、その筐体上に被せられる。皮膚20の下にある筐体の上部ほぼ中央にはマイク22が設けられる。このマイク22は、周囲の音声、特に人間の声を収集するためのものである。
On the
人体状部18は、右腕24Rおよび左腕24Lを含み、右腕24Rおよび左腕24Lすなわち上腕26Rおよび26Lは、それぞれ、肩関節28Rおよび28Lによって、胴体部分に変位自在に取り付けられる。この肩関節28Rおよび28Lは、3軸の自由度を有する。上腕26Rおよび26Lには、1軸の肘関節30Rおよび30Lによって、前腕32Rおよび32Lが取り付けられ、この前腕32Rおよび32Lには、手34Rおよび34Lが取り付けられる。これら右腕24Rおよび左腕24Lの各関節における各軸はここでは図示しないモータによってそれぞれ制御される。すなわち、右腕24Rおよび左腕24Lのそれぞれ4個のモータが、図3において、それぞれ右腕モータ36および左腕モータ38として表される。
The
人体状部18の上部には首関節40を介して頭部42が、人間の頭と同様に俯仰・回転可能に取り付けられる。この3軸の首関節40は、図3に示す頭部モータ44によって制御される。頭部42の前面の「目」に相当する位置には2つの眼カメラ46が設けられ、この眼カメラ46は、ロボット10に接近した人間の顔や他の部分を撮影してその映像信号を取り込む。頭部42の前面に設けられる眼カメラ46の下方にはスピーカ48が設けられる。このスピーカ48は、ロボット10がそれの周囲の人間に対して音声(発話)によってコミュニケーションを図るために用いられる。
A
上で説明した人体状部18の胴体や頭部42および腕は上記したようにすべて柔軟な素材からなる皮膚20に覆われる。図示は省略するが、皮膚20は、下層のウレタンフォームと、その上に積層される比較的肉厚のシリコンゴム層および比較的肉薄のシリコンゴム層とを含む。そして、2つのシリコンゴム層の間に、ピエゾセンサシートが埋め込まれる。
The body,
なお、この皮膚20の具体的な構成およびその詳細な説明は、本件出願人が既に出願し、出願公開された特開2004−283975号公報に開示されているため、ここでは、詳細な説明は省略することにする。
The specific configuration of the
図3は、図2に示すロボット10の電気的な構成を示すブロック図である。図3を参照して、ロボット10は、その全体制御を司るマイクロコンピュータまたはCPU56を含み、このCPU56には、バス58を通して、メモリ60,モータ制御ボード62,センサ入力/出力ボード64およびサウンド入力/出力ボード66が接続される。
FIG. 3 is a block diagram showing an electrical configuration of the
メモリ60は、図示しないが、ROMやHDD、RAMを含み、ROMやHDDにはこのロボット10の制御プログラムが予め書き込まれているとともに、スピーカ48から発生すべき音声または声の音声データや、所定の身振り手振り(身体動作)を行うための各関節軸の角度制御データなどが格納されている。RAMは、一時記憶メモリとして用いられるとともに、ワーキングメモリとして利用される。
Although not shown, the
モータ制御ボード62は、たとえばDSP(Digital Signal Processor) で構成され、各腕や頭部などの各軸モータを制御する。すなわち、モータ制御ボード62は、CPU56からの制御データを受け、右肩関節28Rの3軸のそれぞれについての角度を制御する3つのモータと右肘関節30Rの1軸の角度を制御する1つのモータとの計4つのモータ(図3ではまとめて、「右腕モータ」として示す。)36の回転角度を調節する。また、モータ制御ボード62は、左肩関節28Lの3軸と左肘関節30Lの1軸、計4つのモータ(図3ではまとめて、「左腕モータ」として示す。)38の回転角度を調節する。モータ制御ボード62は、また、頭部42の3軸のモータ(図3ではまとめて、「頭部モータ」として示す。)44の回転角度を調節する。そして、モータ制御ボード62は、車輪14を駆動する2つのモータ(図3ではまとめて、「車輪モータ」として示す。)16を制御する。
The
なお、この実施例の上述のモータは、車輪モータ16を除いて、制御を簡単化するためにそれぞれステッピングモータまたはパルスモータであるが、車輪モータ16と同様に、直流モータであってよい。
The above-described motors of this embodiment are stepping motors or pulse motors for simplifying the control except for the
センサ入力/出力ボード64も、同様に、DSPで構成され、各センサやカメラからの信号を取り込んでCPU56に与える。すなわち、図示しない衝突センサの各々からの接触に関するデータがこのセンサ入力/出力ボード64を通して、CPU56に入力される。また、眼カメラ46からの映像信号が、必要に応じてこのセンサ入力/出力ボード64で所定の処理が施された後、CPU56に入力される。さらに、人間等がロボット10の皮膚20を触れると、その内部に設けられるピエゾセンサ54からの接触(タッチ、撫でるなど)に関するデータがセンサ入力/出力ボード64を通して、CPU56に入力される。
Similarly, the sensor input /
サウンド入力/出力ボード66も、同様に、DSPで構成される。スピーカ48には、サウンド入力/出力ボード66を介して、CPU56から、合成音声データが与えられ、それに応じて、スピーカ48からはそのデータに従った音声または声が出力される。また、マイク22からの音声入力が、サウンド入力/出力ボード66を介して、CPU56に取り込まれる。
Similarly, the sound input /
たとえば、このような構成のロボット10では、上述したように、身体動作と必要な音声とによって人間との間でインタラクション(コミュニケーション)する。また、人間がロボット10に触れると、その触れた箇所(部位)に応じたコミュニケーション行動が実行される。つまり、ロボット10が反応する。具体的には、人間がロボット10の肩を撫でると、これに応じて、ロボット10は、「なーに」と発話するとともに、手を振る。また、人間がロボット10の頭を撫でると、これに応じて、ロボット10は、「わーい」と発話するとともに、首(40)を振る。さらに、人間がロボット10のお腹を撫でると、これに応じて、ロボット10は、「遊ぼう」と発話するとともに、両手を挙げる。ただし、これらは単なる例示であり、限定される必要はなく、ロボット10の反応は開発者が自由に決定(設定)することができる。
For example, in the
ここで、一般的には、このような構成のロボット10または他のロボットを開発したり、開発したロボット10等に所望のコミュニケーション行動(反応)を実現(再現)させたりする場合には、作成した制御プログラム(コミュニケーション行動についてのプログラム)をロボット10に実装し、実際にロボット10とインタラクションして、当該制御プログラムに従うコミュニケーション行動が意図した通り(適切)であるかどうかなどを試験する。
Here, in general, when the
しかし、このようなロボット10は、比較的高価であり、複数の開発者に対して1台割り当てられるため、複数の開発者が話し合いにより、予め決めた時間割りで、交替で使用される。このため、限られた時間で試験を行う必要があり、開発が速やかに進まず、また、開発者毎に使用目的が異なるため、使用する度に制御プログラムを書き換える必要がある。つまり、開発に余計な手間がかかってしまう。
However, such a
そこで、この実施例では、オフラインでロボット10のコミュニケーション行動を試験(シミュレーション)できるシミュレータ100を提案することにより、オフラインでの開発を可能とし、開発にかかる余計な手間を省くようにしてある。
Therefore, in this embodiment, by proposing a
上述したような制御プログラムは、開発者によって作成され、図1に示したコンピュータ102に組み込まれる。具体的には、制御プログラムに従ってロボット10のモデルがコミュニケーション行動を表現するように、当該コミュニケーション行動に含まれる身体動作についてのアニメーションデータがコンピュータ102の内部メモリ(HDD、ROMまたはRAM)に記憶される。たとえば、モデルは、骨組みデータ(ボーンデータ)、ポリゴンデータおよびテクスチャデータのような画像データを用いてタッチスクリーン104に表示される。また、アニメーションデータ(モーションデータ)は、ジョイント(関節:ボーンとボーンの連結部)の位置とジョイントに接続されるボーンの位置とについての時系列変化を示すデータである。ここで、ジョイントは、図2に示したロボット10の各関節(28R,28L,30R,30L,40)に相当する。また、コミュニケーション行動に含まれる発話の内容についての音声データ(音声合成データ)もコンピュータ102の内部メモリに記憶される。
The control program as described above is created by a developer and incorporated in the
ただし、後述するように、制御プログラムは、タッチスクリーン104を通して触れたモデルの部位に応じて予め決定されたコミュニケーション行動を表現するように処理を実行する。つまり、人間(開発者)のタッチ操作に対して、モデルを反応させる。
However, as will be described later, the control program executes a process so as to express a predetermined communication behavior in accordance with the part of the model touched through the
コンピュータ102は、図4に示すようなシミュレーション画面200をタッチスクリーン104に表示する。シミュレーション画面200には、上述したような画像データを用いて、ロボット10のモデル202が表示される。また、シミュレーション画面200は、モデル202の視点変換を指示するためのボタン(ないしアイコン)204が表示される。
The
たとえば、図4に示すシミュレーション画面200は、図5に示すようなモデル202を含む3次元仮想空間を、視点から見た(仮想カメラで撮影した)画像である。図5では、3次元仮想空間の座標系(以下、ロボット座標系という場合がある。)の各軸を(Px,Py,Pz)とし、仮想スクリーン210の各軸を(Sx,Sy,Sz)としてある。ただし、仮想スクリーン210のSz軸は、仮想スクリーン210に対して垂直な方向であり、その奥行きを表わす。また、図5では分かり難いが、3次元仮想空間に配置されるモデル202は、その視線方向はPx軸方向であり、その視点はPx軸上のX点である。
For example, the
上述したように、ロボット10の開発者は、図1に示したようなシミュレータ100を用いて、当該ロボット10のコミュニケーション行動の試験(シミュレーション)を行う。具体的には、シミュレーション画面200には、モデル202が表示され、開発者がモデル202の所望の部位を触れる。つまり、タッチスクリーン104をタッチ操作する。すると、タッチ操作に応じて、タッチ位置(座標位置)のデータ(座標位置データ)がタッチスクリーン104からコンピュータ102に入力される。コンピュータ102は、座標位置データの入力を受けると、当該座標位置データが示す座標(位置)が、モデル202のいずれの部位を指示するか、または、ボタン204を指示するか、或いは、その両方以外を指示するかを判断する。
As described above, the developer of the
モデル202のいずれかの部位に触れた場合には、コンピュータ102は、触れられた部位に対応して定義(決定)されたコミュニケーション行動をモデル202に実行させる。つまり、モデル202をアニメーション表示するとともに、必要に応じて、モデル202が発話しているように、音声合成データを再生して、スピーカ106から音声ないし声を出力する。
When any part of the
また、ボタン204が触れられた場合には、その後の開発者の操作に従って視点変換処理を行う。図示は省略するが、シミュレーション画面200では、視点変換のボタン204をオン(タッチ)する度に、視点変換され、ロボット10のモデル202が、タッチスクリーン104を見る開発者に対して、正面、右側面、背面、左側面、上面、下面、正面、…の順番で見えるように、表示が変化される。ただし、開発者が任意の位置に視点を設定できるようにしてもよい。かかる場合には、たとえば、視点変換のボタン204を操作した後に、タッチスクリーン104で所望の位置を視点としてタッチ入力できるようにしたり、3次元座標の数値を図示しない入力装置(キーボード等)で入力できるようにしたりすることができる。このように、視点を変化させることにより、異なる角度(方向)からモデル202の反応を見ることができる。
When the
ただし、モデル202およびボタン204のいずれもがタッチされていない場合には、たとえば、開発者のタッチ操作を促すコミュニケーション行動をモデル202に実行させる。ここで、モデル202およびボタン204のいずれもがタッチされていない場合とは、開発者がタッチ操作をしていない場合や開発者がモデル202およびボタン204の表示領域以外の領域をタッチ操作している場合をいう。
However, when neither the
具体的には、図1に示したコンピュータ102は、図6および図7に示すシミュレーション処理を実行する。図6に示すように、コンピュータ102はシミュレーション処理を開始すると、ステップS1で、初期化する。ここでは、モデル202を所定の3次元位置(説明の都合上、「第1初期位置」という。)に配置するとともに、当該モデル202の視点を所定の3次元位置、ここでは、第1初期位置とは異なる第2初期位置に設定する。また、ここでは、モデル202の各関節角が初期値に設定される。たとえば、シミュレーション開始時では、モデル202は、直立状態(気をつけの姿勢)になるように、各関節角は設定される。
Specifically, the
次のステップS3では、現在のモデル202の関節角と視点とに基づいて、モデル202をタッチスクリーン104に表示する。なお、上述したように、ステップS1で初期化した場合では、このステップS3の処理によって、たとえば、図4に示したように、直立状態のモデル202が正面を向いたシミュレーション画面200がタッチスクリーン104に表示される。
In the next step S <b> 3, the
続いて、ステップS5では、タッチされたかどうかを判断する。つまり、タッチスクリーン104から座標データ(タッチ座標)が入力されたかどうかを判断する。ステップS5で“NO”であれば、つまりタッチ座標が入力されていなければ、タッチされていないと判断して、図7に示すステップS19に進む。一方、ステップS5で“YES”であれば、つまりタッチ座標が入力されれば、タッチされたと判断して、ステップS7で、視点変換かどうかを判断する。つまり、タッチ座標がボタン204の表示領域に含まれるかどうかを判断する。ここで、“YES”であれば、つまりタッチ座標がボタン204の表示領域に含まれていれば、視点変換と判断して、図7に示すステップS21に進む。しかし、“NO”であれば、つまりタッチ座標がボタン204の表示領域に含まれていなければ、視点変換でないと判断して、ステップS9で、後述するように、タッチ位置(タッチ座標)をロボットの座標(位置)に変換する(図8参照)。
Subsequently, in step S5, it is determined whether or not the touch has been made. That is, it is determined whether coordinate data (touch coordinates) is input from the
次のステップS11では、モデル202の肩が触られたかどうかを判断する。ステップS11で“YES”であれば、つまりモデル202の肩が触られれば、ステップS13で、モデル202が「なーに」と発話して、手を振り、図7に示すステップS23に進む。具体的には、ステップS13では、コンピュータ102は、「なーに」に対応する音声データを読み出し、アナログ変換および増幅等の処理を施した後、スピーカ106から出力する。また、これと同時或いはほぼ同時に、コンピュータ102は、「手を振る」についてのアニメーションデータを読み出し、当該アニメーションデータに従ってモデル202をアニメーション表示する。この様子を、視点から見た画像(映像)を、シミュレーション画面200としてタッチスクリーン104に表示する。このように、開発者のタッチ操作に対するロボット10の反応をモデル202で表現しているのである。以下、同様である。
In the next step S11, it is determined whether or not the shoulder of the
しかし、ステップS11で“NO”であれば、つまりモデル202の肩が触られていなければ、ステップS15で、モデル202の頭が触られたかどうかを判断する。ステップS15で“YES”であれば、つまりモデル202の頭が触られれば、ステップS17で、モデル202が「わーい」と発話して、首を振り、ステップS23に進む。一方、ステップS15で“NO”であれば、つまりモデル202の頭が触られていなければ、図示は省略してあるが、他の部位、たとえば、左(または右)手ないし腕、胴体(腹、背中)などが触られたか否かを判断して、触られた部位に対応して定義(決定)されている反応すなわちコミュニケーション行動を実行する。ただし、開発者のタッチ位置がモデル202およびボタン204の表示領域の外部である場合には、該当する部位がないと判断して、ステップS19に進む。
However, if “NO” in the step S11, that is, if the shoulder of the
上述したように、タッチスクリーン104をタッチされなかったり(ステップS5で“NO”)、タッチ位置がモデル202およびボタン204の表示領域の外部であったり(ステップS11,S15,…で“NO”)した場合には、図7に示すように、ステップS19で、モデル202が「触ってね」と発話し、手を差し出して、ステップS23に進む。また、上述したように、視点変換が指示されると(ステップS7で“YES”)、図7に示すステップS21で、開発者の指示に従って視点を更新(変換)して、ステップS23に進む。
As described above, the
ステップS23では、シミュレーションの終了かどうかを判断する。たとえば、開発者がコンピュータ102に、シミュレーションの終了を指示したかどうかを判断する。ステップS23で“NO”であれば、つまりシミュレーションの終了でなければ、図6に示したステップS3に戻る。しかし、ステップS23で“YES”であれば、つまりシミュレーションの終了であれば、シミュレーション処理を終了する。
In step S23, it is determined whether or not the simulation is finished. For example, it is determined whether or not the developer has instructed the
図8は、図6のステップS3に示したスクリーン表示処理を示すフロー図である。この図8を参照して、コンピュータ102はスクリーン表示処理を開始すると、ステップS31で、現在のモデル202の関節角と、各部位の大きさとから、モデル202の各関節の3次元座標を計算する。続くステップS33では、各部位の座標を仮想スクリーン210上の座標に変換する。具体的には、画面表示する各画素をフレームバッファに記憶するとともに、各画素の奥行き値(Z値)をZバッファに記憶する。次にステップS35では、仮想スクリーン210の背面の部位から順に描画する。つまり、Zバッファ法に従ってモデル202を描画する。そして、ステップS37で、Zバッファに記憶される各画素についてのZ値のそれぞれについて対応する部位(部位の名称またはその識別情報)を図示しないテーブル(以下、「対応テーブル」という。)に記憶して、スクリーン表示処理をリターンする。
FIG. 8 is a flowchart showing the screen display process shown in step S3 of FIG. Referring to FIG. 8, when the
図9は、図6のステップS9に示したロボット座標変換処理を示すフロー図である。この図9を参照して、コンピュータ102はロボット座標変換処理を開始すると、ステップS41で、対応テーブルを参照して、タッチ座標から触れられたスクリーン210に表示されたモデル202の触れられた点(Sx,Sy,Sz)を取得する。ここでは、タッチ座標に基づいて、(Sx,Sy)をフレームバッファから取得し、SzをZバッファから取得する。次のステップS43では、対応する点があるかどうかを判断する。具体的には、取得した点(Sx,Sy,Sz)に含まれるSzに対応して部位が記憶されているかどうかを判断する。これにより、タッチ座標がモデル202上であるかどうかを判断しているのである。ステップS43で“NO”であれば、つまり対応する点がなければ、モデル202を触れていないと判断して、そのままロボット座標変換処理をリターンする。しかし、ステップS43で“YES”であれば、つまり対応する点があれば、モデル202を触れていると判断して、ステップS45で、スクリーン上の座標(Sx,Sy,Sz)をロボット座標(Px,Py,Pz)に変換して、ロボット座標変換処理をリターンする。
FIG. 9 is a flowchart showing the robot coordinate conversion process shown in step S9 of FIG. Referring to FIG. 9, when the
この実施例によれば、シミュレータを用いてロボットの設計および検査を実行することができるので、実際のロボットを用いて試験をするような手間を省くことができる。また、CGによりシミュレーションを実行するので、未だ存在しないロボットの開発にも使用することができる。 According to this embodiment, since the robot can be designed and inspected using the simulator, the trouble of performing the test using the actual robot can be saved. Further, since the simulation is executed by CG, it can be used for developing a robot that does not yet exist.
なお、この実施例では、シミュレータにスピーカを設けて、コミュニケーション行動に含まれる発話を音声で出力するようにしたが、音声に代えて、文字(テキスト)で出力するようにしてもよい。かかる場合には、タッチスクリーンに、発話内容のテキストを表示するようにすればよい。たとえば、モデルが発話しているように演出するために、モデルの口付近に吹き出し(バルーン)で表示するようにすることができる。このようにすれば、シミュレータからスピーカを省くことができる。 In this embodiment, a speaker is provided in the simulator so that utterances included in the communication behavior are output by voice. However, instead of voice, text (text) may be output. In such a case, the text of the utterance content may be displayed on the touch screen. For example, in order to produce an effect as if the model is speaking, a balloon (balloon) can be displayed near the mouth of the model. In this way, the speaker can be omitted from the simulator.
100 …ロボットシミュレータ
102 …コンピュータ
104 …タッチスクリーン
106 …スピーカ
10 …コミュニケーションロボット
18 …人体状部
20 …皮膚
56 …CPU
62 …モータ制御ボード
64 …センサ入力/出力ボード
66 …サウンド入力/出力ボード
DESCRIPTION OF
62 ...
Claims (3)
前記コミュニケーションロボットのモデルを画面表示する画面表示手段、
前記画面表示手段に関連して設けられるポインティングデバイス、および
前記ポインティングデバイスの入力に応じて、前記モデルの身体動作をアニメーション表示するアニメーション表示手段を備える、ロボットシミュレータ。 A robot simulator of a communication robot that executes communication actions including at least body movements,
Screen display means for displaying a screen of the communication robot model;
A robot simulator comprising: a pointing device provided in association with the screen display means; and an animation display means for displaying an animation of a body motion of the model in response to an input of the pointing device.
前記モデルの身体動作をアニメーション表示するとともに、当該身体動作に伴う発話内容を出力する出力手段をさらに備える、請求項1記載のロボットシミュレータ。 The communication behavior includes utterance;
The robot simulator according to claim 1, further comprising output means for displaying the animation of the body motion of the model and outputting the utterance content accompanying the body motion.
前記コミュニケーションロボットのモデルを画面表示する画面表示ステップ、および
前記画面表示ステップによって画面表示されたモデルの指示入力に応じて、当該モデルの身体動作をアニメーション表示するアニメーション表示ステップを実行させる、シミュレーションプログラム。 A communication robot simulation program that executes communication actions including at least body movements,
The simulation program which performs the screen display step which displays the model of the said communication robot on a screen, and the animation display step which displays the animation of the body movement of the said model according to the instruction input of the model displayed on the screen by the said screen display step.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005099602A JP2006272537A (en) | 2005-03-30 | 2005-03-30 | Robot simulator and simulation program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005099602A JP2006272537A (en) | 2005-03-30 | 2005-03-30 | Robot simulator and simulation program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006272537A true JP2006272537A (en) | 2006-10-12 |
Family
ID=37207765
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005099602A Withdrawn JP2006272537A (en) | 2005-03-30 | 2005-03-30 | Robot simulator and simulation program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006272537A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104802173A (en) * | 2014-01-23 | 2015-07-29 | 发那科株式会社 | Data generation device for vision sensor and detection simulation system |
WO2018180143A1 (en) * | 2017-03-31 | 2018-10-04 | ソニー株式会社 | Information processing device, information processing method, computer program, and program manufacturing method |
-
2005
- 2005-03-30 JP JP2005099602A patent/JP2006272537A/en not_active Withdrawn
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104802173A (en) * | 2014-01-23 | 2015-07-29 | 发那科株式会社 | Data generation device for vision sensor and detection simulation system |
JP2015136770A (en) * | 2014-01-23 | 2015-07-30 | ファナック株式会社 | Data creation system of visual sensor, and detection simulation system |
US9519736B2 (en) | 2014-01-23 | 2016-12-13 | Fanuc Corporation | Data generation device for vision sensor and detection simulation system |
WO2018180143A1 (en) * | 2017-03-31 | 2018-10-04 | ソニー株式会社 | Information processing device, information processing method, computer program, and program manufacturing method |
JPWO2018180143A1 (en) * | 2017-03-31 | 2020-02-06 | ソニー株式会社 | Information processing apparatus and information processing method, computer program, and program manufacturing method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20130066468A1 (en) | Telepresence robot, telepresence system comprising the same and method for controlling the same | |
JP2003532144A (en) | Training apparatus and method with virtual reality for dentistry | |
SA110310836B1 (en) | Avatar-Based Virtual Collaborative Assistance | |
JP2009276996A (en) | Information processing apparatus, and information processing method | |
JPH10188028A (en) | Animation image generating device by skeleton, method for generating the animation image and medium storing program for generating the animation image | |
JP2010257081A (en) | Image procession method and image processing system | |
JP2011059862A (en) | Non-grounded inner force sense presentation device | |
JP2000338858A (en) | Virtual space bodily sensing device | |
JP4463120B2 (en) | Imitation robot system and its imitation control method | |
JP7089113B2 (en) | Boundary setting device, boundary setting method and program | |
JP2006272537A (en) | Robot simulator and simulation program | |
JP7104539B2 (en) | Simulation system and program | |
JP6756769B2 (en) | Game programs and game equipment | |
JP5419007B2 (en) | Communication robot development support device | |
CN112823083A (en) | Configurable and interactive robotic system | |
WO2021240601A1 (en) | Virtual space body sensation system | |
CN116322507A (en) | Sex demand interactive platform system | |
JP7413472B1 (en) | Information processing systems and programs | |
JP7390540B2 (en) | Animation production system | |
JP7371820B1 (en) | Animation operation method, animation operation program and animation operation system | |
WO2022201736A1 (en) | Information processing device, information processing method, and program | |
JP2020113095A (en) | Method of controlling character in virtual space | |
JP2024054896A (en) | Robot, control program and control method | |
WO2023209818A1 (en) | Operating device, information processing device, information processing system, information processing method, and information processing program | |
CN117251058B (en) | Control method of multi-information somatosensory interaction system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20080603 |