JP2021083488A - Program and structure control system - Google Patents
Program and structure control system Download PDFInfo
- Publication number
- JP2021083488A JP2021083488A JP2019212510A JP2019212510A JP2021083488A JP 2021083488 A JP2021083488 A JP 2021083488A JP 2019212510 A JP2019212510 A JP 2019212510A JP 2019212510 A JP2019212510 A JP 2019212510A JP 2021083488 A JP2021083488 A JP 2021083488A
- Authority
- JP
- Japan
- Prior art keywords
- motion
- state
- setting
- robot
- control
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Toys (AREA)
- Manipulator (AREA)
Abstract
Description
本発明は、プログラム及び構造体制御システムに関し、特にロボットの駆動制御技術に関する。 The present invention relates to a program and a structure control system, and more particularly to a robot drive control technique.
音声認識により動作するペット型のロボットがある(特許文献1)。 There is a pet-type robot that operates by voice recognition (Patent Document 1).
特許文献1に記載のロボットは、音声に係るコマンドを認識すると、予め定められた、対応する動作を行うよう構成されていたが、このような動作はユーザが所望する挙動ではない可能性があった。
The robot described in
本発明は、ロボット等の構造体にとらせる挙動を容易に設定可能なプログラム及び構造体制御システムを提供することを目的とする。 An object of the present invention is to provide a program and a structure control system that can easily set the behavior of a structure such as a robot.
本発明のプログラムは、駆動部を有する可動部位を複数備えた構造体にとらせる挙動を設定するプログラムであって、コンピュータに、構造体の静止状態を設定する処理と、設定された静止状態を複数用いることで、構造体の状態が連続的に変化する運動状態を設定する処理と、を実行させる。 The program of the present invention is a program for setting the behavior of a structure having a plurality of movable parts having a drive unit, and causes a computer to perform a process of setting a stationary state of the structure and a set stationary state. By using a plurality of them, a process of setting a motion state in which the state of the structure changes continuously is executed.
このような構成により本発明によれば、ロボット等の構造体にとらせる挙動を容易に設定することが可能となる。 According to the present invention, such a configuration makes it possible to easily set the behavior to be taken by a structure such as a robot.
[実施形態]
以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものでなく、また実施形態で説明されている特徴の組み合わせの全てが発明に必須のものとは限らない。実施形態で説明されている複数の特徴のうち二つ以上の特徴が任意に組み合わされてもよい。また、同一若しくは同様の構成には同一の参照番号を付し、重複した説明は省略する。
[Embodiment]
Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. The following embodiments do not limit the invention according to the claims, and not all combinations of features described in the embodiments are essential to the invention. Two or more of the plurality of features described in the embodiments may be arbitrarily combined. In addition, the same or similar configuration will be given the same reference number, and duplicate description will be omitted.
以下に説明する一実施形態は、構造体制御システムの一例としての、駆動可能な構造を有する可動部位を複数備えたロボットと、該ロボットの挙動制御に係る各種処理を実行可能なスマートフォンとを含むロボット制御システムに、本発明を適用した例を説明する。しかし、本発明は、駆動部を有する可動部位を複数備えた構造体と、該構造体にとらせる挙動を設定する端末とが通信接続可能に構成される構造体制御システムであれば適用可能であり、該システムを構成する機器は任意の機器で代替可能である。 One embodiment described below includes, as an example of a structure control system, a robot having a plurality of movable parts having a driveable structure, and a smartphone capable of executing various processes related to behavior control of the robot. An example in which the present invention is applied to a robot control system will be described. However, the present invention can be applied as long as it is a structure control system in which a structure having a plurality of movable parts having a drive unit and a terminal for setting the behavior to be taken by the structure can be communicated and connected. Yes, the devices that make up the system can be replaced by any device.
また、本明細書において、「可動部位」とは、駆動部を備え、該駆動部の駆動制御が行われた場合に外観の態様を変化させる機械的な動作が発生する、構造体の一部を構成する部位を指すものとする。対して「不動部位」とは、駆動部を備えず、外観の態様を変化させる機械的な動作が発生しない部位を指すものとする。なお、以下では、「部位」、「パーツ」等の文言を適宜採用して説明を行うが、これらの文言はいずれも構造体の一部を構成する物体を指すものであり、「可動部位」及び「不動部位」と差別化する意図で用いられるものではない。 Further, in the present specification, the "movable part" is a part of a structure including a drive unit and in which a mechanical operation that changes the appearance is generated when the drive control of the drive unit is performed. It shall refer to the part that constitutes. On the other hand, the "immovable part" refers to a part that does not have a driving unit and does not generate a mechanical operation that changes the appearance. In the following, terms such as "part" and "part" will be appropriately adopted for explanation, but all of these terms refer to objects that form a part of the structure and are "movable parts". And it is not used with the intention of differentiating it from the "immobile site".
《ロボット制御システムの構成》
図1は、本発明の実施形態に係るロボット制御システムの機能構成を示すブロック図である。
<< Configuration of robot control system >>
FIG. 1 is a block diagram showing a functional configuration of a robot control system according to an embodiment of the present invention.
ロボット制御システムは、本発明に係る端末としてのスマートフォン100と、構造体としてのロボット200とで構成される。ロボット制御システムによれば、ユーザはスマートフォン100において専用のアプリケーション(制御アプリケーション)を起動して操作を行うことで、ロボット200に所望の挙動をとらせることが可能となる。より詳しくは、スマートフォン100とロボット200(ロボット200が備える制御用基板210)とは、無線通信可能に構成されており、スマートフォン100においてロボット200の挙動開始に係る操作入力がなされると、対応する動作指示がスマートフォン100からロボット200に送信され、ロボット200において該動作指示に応じた各可動部位の動作制御(ロボット200の挙動制御)が行われる。
The robot control system includes a
〈ロボット200の構造〉
ロボット200は、例えば図2に示されるように、人型の頭部、胴部、腕部、脚部に分離可能な複数の可動部位(パーツ)と、バックパック230として構成された不動部位と、を組み合わせて(機械的に接続して)一体とすることで、構成される。以下の説明では、ロボット制御システムは人型の形態であり、可動部位として、頭部、胴部、2つの腕部、及び2つの脚部が用いられるものとして説明するが、本発明の実施はこれに限られるものではない。これらの可動部位が一体となることによって形成される形態は、犬型や百足型等の他の動物型であってもよい。また可動部位は、生物の外観や機能を模したものである必要はなく、例えば胴部に対してキャタピラやタイヤ等を装着する態様を含むものであってよい。
<Structure of
As shown in FIG. 2, for example, the
人型のロボットの各部に接続可能な可動部位は、複数種類設けられており、ユーザはこれらを組み替えながら所望の外観のロボット200を形成することができる。また各可動部位には、本発明に係る駆動部としての、少なくとも1つのサーボモータ220が備えられており、該可動部位の外観の態様を変更可能に構成されている。サーボモータ220は、ロボット200の駆動時において回転動作を実現し、例えば肩や肘等の人型のロボット200が備える関節として機能する。本実施形態のロボットは、不動部位であるバックパック230に制御用基板210が内蔵されて構成されており、該制御用基板210に対して各可動部位に設けられたサーボモータ220が電気的に接続されることで、該サーボモータ220の駆動制御が可能となる。なお、バックパック230には、サーボモータ220は備えられておらず、可動部位のような外観の態様を変更する機能(変形機能)はない。
A plurality of types of movable parts that can be connected to each part of the humanoid robot are provided, and the user can form the
本実施形態のロボット制御システムでは、胴部のパーツは、他の全ての部位(頭部、腕部及び脚部)のパーツ及びバックパック230を、機械的に接続可能に構成されている。ここで、機械的に接続可能とは、接続する部位の各々をネジ等で固定することで連結させる態様や、組み合わせ可能に構成された構造を組み合わせる(嵌合等)態様を指し、特には当該接続により、一方の部位の駆動により他方の部位に動きの発生または動力の伝達を可能にならしめることを指す。対して、バックパック230は、胴部のパーツにのみ機械的に接続可能に構成されており、その他の部位のパーツには機械的に接続されない。
In the robot control system of the present embodiment, the body part is configured so that the parts of all other parts (head, arms and legs) and the
本実施形態のロボット200では、各可動部位に備えられているサーボモータ220の駆動制御を行うために、制御用基板210と各サーボモータ220とはケーブルによって接続される。このため、制御用基板210には当該電気的な接続用の端子(接続端子217)が備えられており、該端子と、各部位のサーボモータ220に設けられた端子と結線可能となっている。本実施形態のロボット200では、各可動部位に備えられる回路規模を縮小すべく、可動部位には制御用基板を設けず、バックパック230に備えられた制御用基板210と各サーボモータ220とを直接ケーブルによって結ばれる。しかしながら、本発明の実施はこれに限られるものではなく、各可動部位が通電用の回路を備え、可動部位及びバックパック230のそれぞれを機械的に接続する接合部に電気接点が設けられることで、バックパック230に対して可動部位が機械的に接続された際、あるいはバックパック230が機械的に接続された可動部位にさらに別の可動部位が機械的に接続された際に、これらが電気的に接続可能に構成されるものであってもよい。
In the
〈スマートフォン100の機能構成〉
まず、本実施形態のロボット制御システムのスマートフォン100の機能構成について、図3のブロック図を用いて説明する。
<Functional configuration of
First, the functional configuration of the
スマートフォン100は、例えば携帯電話やスマートフォン等の汎用的な通信装置であってよく、所定のアプリケーションプログラムが実行されることで、本実施形態のゲームシステムのスマートフォン100として機能するものとする。
The
制御部101は、例えばCPUであり、スマートフォン100が有する各ブロックの動作を制御する。具体的には制御部101は、例えば記録媒体102に記録されている各ブロックの動作プログラムや、ロボット200の挙動制御に係るアプリケーション(制御アプリケーション)プログラムを読み出し、メモリ103に展開して実行することにより各ブロックの動作を制御する。
The
記録媒体102は、例えば不揮発性メモリやHDD等の、恒久的にデータを保持可能な記録装置である。記録媒体102は、スマートフォン100が有する各ブロックの動作プログラムや制御アプリケーションに係るプログラムに加え、各ブロックの動作において必要となるパラメータや、制御アプリケーションによって構成された各種の情報を記録する。メモリ103は、例えば揮発性メモリ等の一時的なデータ記憶に使用される記憶装置である。メモリ103は、各ブロックの動作プログラムの展開領域としてだけでなく、各ブロックの動作において出力されたデータ等を一時的に記憶する格納領域としても用いられる。
The
モーションDB104は、後述の、本発明に係る制御アプリケーションが提供するモーションメイク機能を利用して構成されたモーション、及び制御アプリケーションにプリセットとして用意されるモーションについて、これを参照するための情報を格納するデータベースである。
The
表示制御部105は、スマートフォン100における情報提示を司る。表示制御部105は、例えば描画用チップ等の描画装置を含み、例えばLCD等であってよい表示部110に表示させる画面を生成する際には所定の描画処理を行う。本実施形態のロボット制御システムでは、表示制御部105は、主として制御アプリケーションにおいてユーザに提供される各種GUIや画面の提示に係る表示制御を行う。本実施形態ではスマートフォン100における情報提示は、表示部110のみを用いてなされる態様について説明するが、音出力や触覚提示等、表示以外の情報提示手段が用いられるものであってもよいことは言うまでもない。
The
操作入力部106は、例えば決定入力用の操作部材や各種センサ等の、スマートフォン100が有するユーザインタフェースである。操作入力部106は、操作部材やセンサに対する操作入力がなされたことを検出すると、該操作入力に対応する制御信号を制御部101に出力する。本実施形態では操作入力部106は物理的な操作部材に加え、例えば表示部110の画面上になされたタッチ操作を検出するタッチ操作検出センサを含むものとする。
The
通信部107は、スマートフォン100が有する外部装置との通信インタフェースである。本実施形態では通信部107は、ロボット200が備える後述の制御用基板210との間で機器間通信を行い、動作指示の送信、ロボット200が備える後述の外界センサ221の検出結果の受信等を行う。また通信部107は、不図示のネットワークを介して外部機器と接続し、情報の送受信が可能に構成されていてもよい。
The
〈制御用基板210の機能構成〉
次に、本実施形態のロボット制御システムにおいて、ロボット200のバックパック230が備える制御用基板210の機能構成について、図4のブロック図を用いて説明する。なお、制御用基板210が備える機能構成において、スマートフォン100と同様の機能を担う構成については、「基板」の接頭文字を付して識別する。
<Functional configuration of
Next, in the robot control system of the present embodiment, the functional configuration of the
基板制御部211は、例えばCPU、ROM、RAMで構成されるマイクロコンピュータであり、制御用基板210の各ブロックの動作を制御する。具体的には基板制御部211のCPUは、ROMに記録された各ブロックの動作プログラムを読み出し、RAMに展開して実行することにより各ブロックの動作を制御する。
The
基板メモリ212は、本実施形態のロボット200の挙動に係る各サーボモータ220の駆動制御に用いられる情報(後述のモーション情報)を格納する、恒久的な記録が可能に構成された記録媒体である。説明を簡単にすべく、本実施形態の制御用基板210は、制御用基板210の各ブロックの動作プログラムを記録するROMとは別に、基板メモリ212を有するものとして説明するが、本発明の実施はこれに限られるものではない。
The
検出部213は、ロボット200の周囲に障害物が存在するか否かの検出を行う。本実施形態のロボット200では、胴部の可動部位に外界センサ221が備えられており、検出部213は、該外界センサ221の検出結果を取得する。即ち、胴部の可動部位の備えるサーボモータ220及び外界センサ221は、制御用基板210と電気的に接続されており、検出部213はこれらを接続する配線を介して検出結果を取得する。
The
駆動制御部214は、例えばモータドライバ等であり、サーボモータ220の駆動制御を行う。本実施形態では駆動制御部214は、スマートフォン100から受信された動作指示に対応する挙動をロボット200に行わせるべく、電気的に接続された各可動部位のサーボモータ220の回転動作を制御する。
The
音再生部215は、例えばサウンドチップ等の音信号の出力を行う回路を含み、スピーカ222からの音出力を制御する。音再生部215は、例えばROMに予め記憶された音データをRAMに展開し、例えばゲームの進行状況に応じて、予め記録媒体102に記録された音データのうちから出力を行う音データを確定し、これを電気的な音信号に変換(D/A変換)してスピーカ222に出力することで、育成ゲームに係る音提示を行う。スピーカ222は、入力された音信号に基づいて振動を生じさせ、音波を出力する。本実施形態では、スピーカ222はバックパック230に内蔵されているものとして説明するが、外界センサ221と同様に可動部位に備えられる場合は別途電気配線による接続が必要となることは言うまでもない。
The
基板通信部216は、制御用基板210が備える外部装置との通信インタフェースである。本実施形態のロボット制御システムでは、スマートフォン100において起動されている制御アプリケーションの状態に応じて、スマートフォン100と制御用基板210との通信接続が変化する。基板通信部216は、スマートフォン100から接続要求を受信したことに応じて通信接続を確立し、制御アプリケーションの状態に応じて該接続を維持するか切断するかの制御を行う。
The
《ロボット200にとらせる挙動の構成》
以下、本実施形態のロボット制御システムにおいて、ロボット200にとらせる挙動の構成方法について説明する。
<< Composition of behavior to be taken by
Hereinafter, in the robot control system of the present embodiment, a method of configuring the behavior to be taken by the
スマートフォン100で実行される制御アプリケーションには、ロボット200が有する各サーボモータ220をいずれの駆動状態とするかを構成するメイク(make)モードが設けられる。該メイクモードでは、ユーザは、ロボット200にとらせる静止状態(ポーズ)及び運動状態(モーション)を構成することができる。
The control application executed by the
〈ポーズメイク機能〉
メイクモードのポーズメイク機能では、例えば図5(a)の画面に示されるように、ロボット200が備える各サーボモータ220の制御目標値をユーザが指定することで、所望のポーズを示す情報(ポーズ情報)を構成することができる。
<Pose makeup function>
In the pose make function of the make mode, for example, as shown in the screen of FIG. 5A, the user specifies a control target value of each
図5(a)の画面例では、1つのサーボモータ220に対して1つのスライダ501が設けられ、ロボット200が備えるサーボモータ220の数だけ並んで表示されている。ユーザは、各スライダ501の値を変更することで、該当のサーボモータ220の回転角を調整することができる。図の例では、サーボモータ220の初期値(通常状態での値(例えばロボット200の直立時))が7500に設定され、ユーザは0〜15000の15001段階でサーボモータ220の制御目標値を設定することが可能な態様が示されている。各サーボモータ220の制御目標値の設定後は、保存ボタン502に対する操作入力がなされたことに応じて、該制御目標値群を含んだポーズ情報が構成され、例えば記録媒体102に格納される。
In the screen example of FIG. 5A, one
ここで、設定される制御目標値は、該当のサーボモータ220に係る駆動制御を行う際に、該サーボモータ220の備える不図示のエンコーダの出力値を変更する目標として参照される値であり、駆動制御の開始時の出力値によらず絶対的に定められる数値であるものとする。またポーズ情報の格納は、少なくともいずれかのサーボモータ220の駆動状態が、初期値と異なる状態となる制御目標値が設定されていることを条件とする。
Here, the control target value set is a value referred to as a target for changing the output value of an encoder (not shown) included in the
また制御アプリケーションは、ロボット200自体を操作することでも、ロボット200にとらせるポーズが構成可能であってよい。この場合、ユーザは、ロボット200の各可動部位を所望の外観となるよう調整(サーボモータ220の回転角を任意に変更)し、図5(a)に示されるスキャンボタン503に対して操作入力を行うことで、ロボット200が備える各サーボモータ220の制御値(駆動制御を行う場合の駆動状態)を、各スライダ501に反映させることができる。該機能により、サーボモータ220の駆動制御に明るくないユーザであっても、容易に所望のポーズを構成することが可能となる。
Further, the control application may be able to configure a pose to be taken by the
制御アプリケーションは、このように構成したポーズについて、ポーズ情報の保存後あるいは保存前の任意のタイミングで、実際にロボット200に反映させて確認可能であってよい。この場合、スマートフォン100から制御用基板210に対して各サーボモータ220をポーズ情報に対応する駆動状態とするための動作指示が送出され、駆動制御部214がこれに応じて駆動制御を行うことで、ロボット200を該当の状態として提示することができる。
The control application may be able to confirm the pose configured in this way by actually reflecting it on the
〈モーションメイク機能〉
メイクモードのモーションメイク機能では、ポーズメイク機能によって構成された複数種類のポーズを組み合わせることで、これらのポーズを遷移するモーションを示す情報(モーション情報)を構成することができる。
<Motion makeup function>
In the motion make function of the make mode, information (motion information) indicating the motion of transitioning these poses can be configured by combining a plurality of types of poses configured by the pose make function.
モーションメイク機能に係り提示される画面は、例えば図5(b)に示されるように、既に構成されたポーズ情報の各々を示すポーズアイコン511を一覧表示するポーズ選択領域512と、構成するモーションにおいて経由するポーズ群を示すモーション構成領域513を含む。ポーズ選択領域512に配置されるポーズアイコン511の各々は、表示部110に対するタッチ操作で選択操作が可能に構成されており、例えばユーザは所望のポーズアイコン511を選択することで、モーション構成領域513のタイムライン514上に配置できる。
The screens presented in relation to the motion make function are, for example, as shown in FIG. 5B, in a
タイムライン514には、複数のポーズアイコン511が配置可能なマスが設けられており、選択されたポーズアイコン511は、例えば選択された順序で、左端のマスから順次右のマスに位置を移動しながら配置される。タイムライン514は、構成するモーションにおいてロボット200が遷移するポーズの遷移順を示しており、該モーションは、左端のマスに配置されたポーズアイコン511に係るポーズから開始して、順次右のマスに配置されたポーズアイコン511に係るポーズに遷移するよう補間して構成される。タイムライン514上において、配置されたポーズアイコン511の各々は、削除、及び任意の順序(遷移順)に変更することが可能に構成されているものとする。
The
またモーションメイク機能では、タイムライン514の隣接するマスに配置された2つのポーズアイコン511に対して、これらポーズアイコン511に係るポーズを遷移する際の速度、及び遷移時にスピーカ222から出力される音の少なくともいずれかを設定可能に構成される。これらの設定は、例えば図6に示されるような画面にて行われるものであってよい。図6の例では、ポーズアイコン601で示される遷移元のポーズからポーズアイコン602で示される遷移先のポーズへの遷移について、その遷移速度を設定する速度変更領域603と、遷移中に再生する音(SE)の再生タイミングを設定するタイミング変更領域604とを含む。速度変更領域603及びタイミング変更領域604内にタッチ操作がなされると、領域中の水平位置に応じて、それぞれ遷移速度、再生タイミングが設定される。
In the motion make function, the speed at which the poses related to the
ここで、本実施形態では遷移速度は、サーボモータ220の駆動速度(単位時間当たりの回転量)であるものとして説明するが、本発明の実施はこれに限られるものではない。本実施形態の制御アプリケーションでは、遷移速度と再生タイミングは7段階で設定可能であるものとし、タッチ操作が入力された水平座標に応じて、いずれの段階とするかの判断がなされる。
Here, in the present embodiment, the transition speed will be described as the driving speed (rotation amount per unit time) of the
再生される音データの選択は、音選択ボタン605に対する操作入力を契機に提示される、音データ一覧画面(不図示)を介して行われるものであってよい。該一覧画面では、例えば音データの選択、テスト再生、選択決定が可能に構成され、選択決定がなされた場合には、図6の画面の音選択ボタン605に係る表記が、図示される、未選択を示す「EMPTY」から音データの識別名に変更されるものであってよい。
The sound data to be reproduced may be selected via the sound data list screen (not shown) presented when the operation input to the
モーションの構成後は、保存ボタン515に対する操作入力がなされたことに応じて、タイムライン514に配置されたポーズアイコン511と各ポーズアイコン511について設定された遷移速度及び音出力の情報に基づいてモーション情報が生成され、例えば記録媒体102に格納される。またこのとき、構成したモーション情報について、ユーザが識別するためにモーション名の入力を受け付けるものであってよい。
After the motion is configured, the motion is based on the
本実施形態ではこのようなモーションメイク機能により構成されるモーション情報は、例えば図12に示されるように、モーションを識別するモーションID1201に関連付けて、該モーションが開始された後に、ロボット200に生じるポーズ遷移を時系列で示した駆動用情報1202と、ロボット200における音出力を時系列で示した音出力用情報1203とを記録したものとする。ここで、駆動用情報1202は、該モーション中に遷移するポーズの数を示す遷移数1211と、これら遷移するポーズの各々について、各サーボモータ220の制御目標値1221及び該ポーズをとらせるタイミング(開始からの経過時間)を示すタイミング情報1222とを含んで構成される。また、音出力用情報1203は、該モーション中に再生される音データの数を示す再生数1231と、再生される音データを識別する音データID1241及び該音データの再生タイミング(開始からの経過時間)を示すタイミング情報1242を含んで構成される。そして、このように構成されたモーション情報は、予めスマートフォン100から制御用基板210に伝送され、基板メモリ212に格納されるものとする。
In the present embodiment, the motion information configured by such a motion make function is associated with the
即ち、構成したモーションをロボット200に行わせることをユーザが所望する場合には、該当のモーションのモーションIDが動作指示としてスマートフォン100から送出されることで、対応するロボット200の駆動指示が行われる。従って、モーションメイク機能において構成されたモーションについては、該モーションに係るモーションIDの情報及び該モーションについてユーザが設定したモーション名の情報が、モーションDB104に格納される。
That is, when the user desires the
制御アプリケーションは、このように構成したモーション情報について、ポーズ情報と同様に任意のタイミングで、実際にロボット200に反映させて確認可能であってよい。この場合、スマートフォン100から制御用基板210に対して、モーション情報と該モーション情報に係るモーションをロボット200に行わせる動作指示とが送出され、駆動制御部214及び音再生部215がこれに応じて動作することができる。
The control application may be able to confirm the motion information configured in this way by actually reflecting it on the
以上、ポーズメイク機能及びモーションメイク機能を利用して新規に情報(ポーズ情報、モーション情報)を構成する例について説明したが、既に構成された情報を、同様のGUIを用いて編集、更新可能に構成されるものであってよいことは言うまでもない。 The example of newly configuring information (pause information, motion information) using the pose make function and the motion make function has been described above, but the already configured information can be edited and updated using the same GUI. It goes without saying that it may be composed.
《挙動構成処理》
以下、本実施形態のスマートフォン100で実行される挙動構成処理について、図7のフローチャートを用いて具体的な処理を説明する。該フローチャートに対応する処理は、制御部101が、例えば記録媒体102に記憶されている対応する処理プログラムを読み出し、メモリ103に展開して実行することにより実現することができる。なお、本挙動構成処理は、例えば制御アプリケーションにおいてメイクモードが実行され、ロボット200の挙動の新規構成に係る指示がなされた際に開始されるものとして説明する。
<< Behavior configuration processing >>
Hereinafter, specific processing will be described with reference to the flowchart of FIG. 7 regarding the behavior configuration processing executed by the
S701で、制御部101は、メイクモードのうちのポーズメイク機能とモーションメイク機能のいずれが選択されたかを判断する。ポーズメイク機能とモーションメイク機能の選択は、例えば挙動の新規構成に係る指示がなされたことに応じて提示される構成種類の選択画面において、いずれの機能が選択されたか否かに応じて判断されるものであってよい。制御部101は、ポーズメイク機能が選択されたと判断した場合は処理をS702に移し、モーションメイク機能が選択されたと判断した場合は処理をS707に移す。
In S701, the
S702で、表示制御部105は制御部101の制御の下、構成するポーズに係る各サーボモータ220の制御目標値の設定を受け付ける画面(図5(a))を生成し、表示部110に表示させる。このとき、該画面において各スライダ501が指し示す値(制御目標値)の情報(一時ポーズ情報)は、ポーズ情報と同様の構成で、例えばメモリ103に格納されているものであってよい。該一時ポーズ情報の初期値は、例えばロボット200の直立時における各サーボモータ220の駆動状態であってよい。表示制御部105は、メモリ103に格納されている一時ポーズ情報を参照して、制御目標値の設定を受け付ける画面の生成を行う。
In S702, under the control of the
S703で、制御部101は、いずれかのスライダ501において制御目標値の変更に係る操作入力がなされたか否かを判断する。制御部101は、制御目標値の変更に係る操作入力がなされたと判断した場合は処理をS704に移し、なされていないと判断した場合は処理をS705に移す。
In S703, the
S704で、制御部101は、なされた変更に係る操作入力に基づいて、一時ポーズ情報のうちの該当のスライダ501に対応付けられたサーボモータ220の制御目標値の情報を変更し、処理をS702に戻す。
In S704, the
S703において制御目標値の変更に係る操作入力がなされていないと判断した場合、制御部101はS705で、保存ボタン502に対する操作入力がなされたか否かを判断する。制御部101は、保存ボタン502に対する操作入力がなされたと判断した場合は処理をS706に移し、なされていないと判断した場合は処理をS702に戻す。
When it is determined in S703 that the operation input related to the change of the control target value has not been made, the
S706で、制御部101は、ポーズ情報を構成して記録媒体102に格納し、本挙動構成処理を完了する。
In S706, the
一方、S701においてモーションメイク機能が選択されたと判断した場合、表示制御部105は制御部101の制御の下、S707で、構成するモーションに係るポーズ遷移の設定を受け付ける画面(図5(b))を生成し、表示部110に表示させる。このとき、ポーズ選択領域512に配置されるポーズアイコン511は、記録媒体102に格納されている(ユーザにより構成された、または予め設けられた)ポーズ情報に基づいて決定される。またタイムライン514の各マスに配置されるポーズアイコン511の情報は、モーション情報と同様の構成であり、例えば一時モーション情報としてメモリ103に格納されるものであってよい。該一時モーション情報は、初期化時にはいずれのポーズを示すポーズ情報も含まれていないものとする。
On the other hand, when it is determined in S701 that the motion make function is selected, the
S708で、制御部101は、タイムライン514に対して新たなポーズアイコン511を配置する操作入力がなされたか否かを判断する。制御部101は、タイムライン514に対して新たなポーズアイコン511を配置する操作入力がなされたと判断した場合は処理をS709に移し、なされていないと判断した場合は処理をS710に移す。
In S708, the
S709で、制御部101は、なされた新たなポーズアイコン511の配置に係る操作入力に基づいて、一時モーション情報の駆動用情報1202について、遷移数1211を1増加させて更新すると共に、配置されたポーズアイコン511に係る情報(制御目標値1221及びタイミング情報1222)を追加し、処理をS707に戻す。
In S709, the
S708において新たなポーズアイコン511の配置に係る操作入力がなされていないと判断した場合、制御部101はS710で、既にタイムライン514に配置されているポーズアイコン511の配置順を異ならせる操作入力がなされたか否かを判断する。制御部101は、ポーズアイコン511の配置順を異ならせる操作入力がなされたと判断した場合は処理をS711に移し、なされていないと判断した場合は処理をS712に移す。
When it is determined in S708 that the operation input related to the arrangement of the
S711で、制御部101は、なされたポーズアイコン511の配置順の変更に係る操作入力に基づいて、一時モーション情報の駆動用情報1202の変更(制御目標値1221の入れ替え及びタイミング情報1222の変更)を行って処理をS707に戻す。
In S711, the
S710においてポーズアイコン511の配置順を異ならせる操作入力がなされていないと判断した場合、制御部101はS712で、タイムライン514に隣接して配置されている2つのポーズアイコン511について、遷移速度または音再生タイミングの編集に係る操作入力がなされたか否かを判断する。制御部101は、遷移速度または音再生タイミングの編集に係る操作入力がなされたと判断した場合は処理をS713に移し、なされていないと判断した場合は処理をS714に移す。
When it is determined in S710 that the operation input for changing the arrangement order of the
S713で、制御部101は、遷移速度及び音再生タイミングの編集用画面(図6)を表示させるよう表示制御部105を制御し、遷移速度及び音再生タイミングの編集を受け付ける。本実施形態では当該処理の詳細は省略するが、制御部101は、上述したように遷移速度または音再生タイミングの変更に係りなされた操作入力に基づいて、該当のポーズ間の遷移について一時モーション情報のタイミング情報1222または音出力用情報1203の変更を行い、処理をS707に戻す。
In S713, the
S712において遷移速度または音再生タイミングの編集に係る操作入力がなされていないと判断した場合、制御部101はS714で、保存ボタン515に対する操作入力がなされたか否かを判断する。制御部101は、保存ボタン515に対する操作入力がなされたと判断した場合は処理をS715に移し、なされていないと判断した場合は処理をS707に戻す。
When it is determined in S712 that the operation input related to the editing of the transition speed or the sound reproduction timing has not been made, the
S715で、制御部101は、モーション情報を構成して記録媒体102に格納し、本挙動構成処理を完了する。また制御部101は、構成されたモーションに対するモーション名の入力を受け付け、モーション情報のモーションID1201の情報及びモーション名の情報をモーションDB104に格納する。本ステップで構成されたモーション情報は、通信部107に伝送され、制御用基板210に送信されてもよい。
In S715, the
なお、本実施形態では便宜上、一時モーション情報はモーション情報と同様のデータ構成であるものとして説明するが、本発明の実施はこれに限られるものではない。例えば、モーションメイク機能でモーションを構成している時点では、一時モーション情報に格納される情報は、各サーボモータ220の制御目標値ではなく、例えばタイムライン514に配置されたポーズアイコン511を識別するポーズIDで管理されるものであってもよい。
In the present embodiment, for convenience, the temporary motion information will be described as having the same data structure as the motion information, but the embodiment of the present invention is not limited to this. For example, at the time when the motion is configured by the motion make function, the information stored in the temporary motion information identifies not the control target value of each
《コントローラGUI》
またスマートフォン100で実行される制御アプリケーションには、ロボット200にとらせる挙動を、ユーザにリアルタイムに選択可能ならしめるコントローラモードが設けられる。コントローラモードでは、制御アプリケーションが起動されているスマートフォン100の表示部110にコントローラGUIが提示され、ユーザは該コントローラGUIを介することで、ロボット200の挙動制御を行うことができる。
《Controller GUI》
Further, the control application executed by the
制御アプリケーションでは、例えば図8(a)に示されるような、ロボット200に行わせることが可能なモーションを示すモーションアイコン801を配置したコントローラGUIを提供する。各モーションアイコン801は、表示部110に提示されている期間、該モーションアイコン801に対応付けられたモーションの開始指示を、タッチ操作により受け付けるユーザインタフェースとして機能する。
The control application provides a controller GUI in which a
ユーザは、コントローラGUIにおいてモーションアイコン801に対する操作入力(タップ操作)を行うことで、該モーションアイコン801に対応付けられたモーションをロボット200に行わせることができる。具体的には、モーションアイコン801への操作入力がなされた場合、制御部101は、該モーションアイコン801に対応付けられたモーションIDを取得して通信部107に伝送し、動作指示としてロボット200に送信させる。該動作指示を受信すると、基板制御部211は基板メモリ212から該当のモーションIDが関連付けられたモーション情報を取得し、駆動制御部214に各サーボモータ220の駆動制御、及び音再生部215にスピーカ222からの音出力制御を行わせる。
The user can make the
またコントローラモードは、図8(a)に示したような1以上のモーションアイコン801が配置されたコントローラGUIを提示してロボット200の挙動制御を提供する操作機能と、コントローラGUIを所望の構成とすべく、コントローラGUIに配置するモーションアイコン801及びその位置のカスタマイズを提供する編集機能とを提供可能に構成される。
Further, the controller mode has an operation function of presenting a controller GUI in which one or
編集機能を利用して新規にコントローラGUIを構成する場合、表示部110には、図8(b)されるような、モーションアイコン801がまだ配置されていない態様の操作領域811と、当該操作領域811に移動配置可能なモーションアイコン801の一覧を示す候補領域812とが提示される。図示されるように、操作領域811には所定数のスロット813が設けられており、ユーザは、該スロット813の各々に対して候補領域812からモーションアイコン801を移動配置(ドラッグ&ドロップ)することで、所望の態様のコントローラGUIを構成することができる。1つのスロット813に配置可能なモーションアイコン801の数は1つであり、図8(b)の例では操作領域811には最大10個のモーションアイコン801を配置して、10種類のモーションの開始指示が可能なコントローラGUIを構成することができる。
When a controller GUI is newly configured by using the editing function, the
候補領域812に並ぶモーションアイコン801は、モーションメイク機能で構成されてモーションDB104に登録されたモーションに係るものだけでなく、制御アプリケーションにプリセットとして予め登録されているモーションに係るものを含んでいてもよい。
The
なお、本実施形態では配置するモーションアイコン801の候補領域812から操作領域811への移動操作が、1回のタッチ操作(ドラッグ&ドロップ)で完了する態様について説明するが、本発明の実施はこれに限られるものではない。例えば、操作領域811において配置を行うスロット813を指示する操作入力がなされた後に、該スロット813に配置するモーションアイコン801を候補領域812から選択する操作入力を受け付けるよう構成されるものであってもよい。
In the present embodiment, a mode in which the operation of moving the
またモーションアイコン801の配置を決める指標となるよう、あるいはコントローラGUIを用いてロボット200の操作を行う際に、ユーザが所望のモーションアイコン801を容易に選択可能なよう、各モーションアイコン801は、対応するモーションにおいて主として駆動する可動部位(該モーションを行う際に駆動量が最も多い可動部位)に応じて異なる配色で提示されるものであってよい。例えば、図8の例では、主として駆動する可動部位が脚部であるモーションアイコン801はハッチングを付して示されており、主として駆動する可動部位が腕部であるモーションアイコン801はドットを付して示されている。
Further, each
またコントローラGUIには、例えばロボット200の挙動制御を行う際の指標となるべく、ロボット200が備える外界センサ221の検出結果を提示するセンサ出力802が含められるものであってもよい。これによりユーザは、ロボット200の置かれた状況を把握した上で、適切なモーションを行わせるよう操作を行うことができる。当該態様のコントローラGUIを実現するために、例えばコントローラモードの操作機能が提供されている期間、通信部107は基板通信部216との通信接続を維持し、所定の時間間隔で検出部213が外界センサ221から取得した検出結果を受信する。そして表示制御部105は、該受信された検出結果を、コントローラGUIに含めた画面を構成して表示部110に表示させるよう動作すればよい。
Further, the controller GUI may include, for example, a
《GUI編集処理》
以下、本実施形態の制御アプリケーションにて、コントローラGUIの編集機能を利用する場合のGUI編集処理について、図9のフローチャートを用いて具体的な処理を説明する。該フローチャートに対応する処理は、制御部101が、例えば記録媒体102に記憶されている対応する処理プログラムを読み出し、メモリ103に展開して実行することにより実現することができる。なお、本GUI編集処理は、例えば制御アプリケーションにおいてコントローラモードが実行され、コントローラGUIの編集に係る指示がなされた際に開始されるものとして説明する。
<< GUI editing process >>
Hereinafter, the GUI editing process when the editing function of the controller GUI is used in the control application of the present embodiment will be described with reference to the specific processing using the flowchart of FIG. The process corresponding to the flowchart can be realized by the
S901で、制御部101は、コントローラGUIの操作領域811に既に配置されたモーションアイコン801の情報を取得する。操作領域811に既に配置されたモーションアイコン801の情報は、該当のモーションのそれぞれについて、モーションID及びコントローラGUI上の配置位置を示す情報(スロットID)が配置情報として、例えば記録媒体102に格納されているものであってよい。制御部101は、本ステップにおいて該配置情報を参照することで、該当のモーションアイコン801の情報を取得する。
In S901, the
S902で、制御部101は、コントローラGUIの候補領域812に配置するモーションアイコン801の情報を取得する。モーションアイコン801を候補領域812に配置するモーションは、モーションメイク機能を用いてユーザにより構成されたモーションと、例えば制御アプリケーションのインストール時から予め記録されているプリセットのモーションとから、操作領域811にモーションアイコン801を配置するモーションを除いたものである。モーションDB104に格納されている情報とS901において取得した情報とに基づいて、候補領域812に配置するモーションアイコン801の情報を取得する。
In S902, the
S903で、表示制御部105は制御部101の制御の下、S901及びS902において取得した情報に基づいて、コントローラGUIの編集時に係る画面を生成して表示部110に表示させる。
In S903, under the control of the
S904で、制御部101は、操作領域811へのモーションアイコン801の配置に係る操作入力(モーションアイコン801の候補領域812から操作領域811への移動操作)がなされたか否かを判断する。制御部101は、なされたと判断した場合は処理をS905に移し、なされていないと判断した場合は本ステップの処理を繰り返す。
In S904, the
S905で、制御部101は、新たに操作領域811のスロット813に配置されたモーションアイコン801について、対応するモーションID及び該スロット813のスロットIDを取得して記録媒体102に格納し、処理をS901に戻す。
In S905, the
このようにすることで、所望するモーションの開始指示をユーザが容易に選択可能なコントローラGUIを、ユーザ自ら設定することができる。 By doing so, the user can set the controller GUI that allows the user to easily select the start instruction of the desired motion.
《ロボット200における動的制御》
上述したように、本実施形態のロボット制御システムではコントローラGUIを介することで、予め構成したモーションを行わせるようロボット200の挙動を制御することが可能になる。一方で、ロボット200の各可動部位が備えるサーボモータ220は、ロボット200自体を操作してのポーズ構成を可能な態様としており、特に電断時や通信断時では、ユーザによって回転角が自在に設定され得る。つまり、各可動部位のサーボモータ220の駆動状態が、電断前/通信断前と再通電後/通信再接続後とで異なることがある。また構成されるモーションの各々は、モーション開始時及び終了時のポーズが独立して構成されるものであるため、例えば連続してモーションを行わせようとした場合に、サーボモータ220の駆動状態が連続しないこともある。
<< Dynamic control in
As described above, in the robot control system of the present embodiment, it is possible to control the behavior of the
従って、コントローラGUIを介してモーションの開始に係る動作指示を受信した際、駆動制御部214は、現在の各サーボモータ220の駆動状態と該モーションの開始時に係る各サーボモータ220の駆動状態とが異なる場合には、該開始時に係る駆動状態となるように各サーボモータ220の駆動制御を行う。そして各サーボモータ220の駆動状態が、動作指示に係るモーションの開始時の駆動状態と一致した後、駆動制御部214は、モーション情報に基づいて該モーションを行うように各サーボモータ220の駆動制御を行う。
Therefore, when the operation instruction related to the start of the motion is received via the controller GUI, the
また駆動制御部214は、例えば、動作指示に係るモーションを行わせた場合にロボット200周囲の障害物との衝突が生じ得ると判断した場合、ロボット200周囲への障害物の進入が生じたと判断した場合等、検出部213が外界センサ221から取得した検出結果が所定の条件を満たす状況となった場合には、動作指示を受けることなく動的に各サーボモータ220の駆動制御を行う。該駆動制御は、例えば、衝突を回避するためのものであってもよいし、衝突後の転倒を防ぐためのものであってもよい。即ち、本実施形態のロボット200では、駆動制御部214は、外界センサ221の検出結果に基づいて動作指示に依らない駆動制御も行う。
Further, when the
《挙動制御処理》
このような動的制御も含めた、本実施形態のロボット制御システムにおいて、ユーザの操作に応じたロボット200の挙動制御を実現する挙動制御処理について、図10のフローチャートを用いて具体的な処理を説明する。該フローチャートに対応する処理は、制御部101及び基板制御部211が、例えばそれぞれ記録媒体102または基板メモリ212の記憶領域に記憶されている対応する処理プログラムを読み出し、メモリ103または基板メモリ212の展開領域に展開して実行することにより実現することができる。なお、本挙動制御処理は、例えばスマートフォン100において制御アプリケーションのコントローラモードの操作機能に係る処理が実行され、スマートフォン100と制御用基板210との通信接続が確立した際に開始されるものとして説明する。以下の説明では、ロボット200の挙動制御にフォーカスするため、ロボット200における音出力制御や、検出部213による検出結果に基づいてスマートフォン100において生じる表示の変化等の処理は含めていない。
<< Behavior control processing >>
In the robot control system of the present embodiment including such dynamic control, specific processing is performed using the flowchart of FIG. 10 for the behavior control processing that realizes the behavior control of the
S1001で、表示制御部105は制御部101の制御の下、ユーザにより設定されたコントローラGUIを表示部110に提示する。
In S1001, the
S1002で、制御部101は、いずれかのモーションに対する開始指示がなされたか否かを判断する。本ステップの判断は、コントローラGUIに配置されたいずれかのモーションアイコン801に対する操作入力がなされたか否かに基づいて行われるものであってよい。制御部101は、いずれかのモーションに対する開始指示がなされたと判断した場合は処理をS1003に移し、なされていないと判断した場合はステップの処理を繰り返す。
In S1002, the
S1003で、制御部101は、開始指示がなされたモーションのモーションID1201を通信部107に伝送し、動作指示とともに制御用基板210に送信させ、処理をS1002に戻す。
In S1003, the
S1004で、基板制御部211は、通信接続中のスマートフォン100から動作指示を受信したか否かを判断する。基板制御部211は、動作指示を受信したと判断した場合は処理をS1005に移し、受信していないと判断した場合は処理をS1015に移す。
In S1004, the
S1005で、基板制御部211は、動作指示とともに受信したモーションIDが対応付けられたモーション情報(対象モーション情報)を基板メモリ212から取得し、該モーション情報に基づいて駆動制御部214に各サーボモータ220の駆動制御を開始させる。
In S1005, the
S1006で、駆動制御部214は、現在の各サーボモータ220が備えるエンコーダの出力値が、対象モーション情報の開始時のポーズに係る同サーボモータ220の駆動制御値と異なるか否かを判断する。本ステップの判断は、ロボット200が備える全てのサーボモータ220の中に、現在の出力値と開始時のポーズに係る駆動制御値とが異なるサーボモータ220がいずれか1つでも存在するか否かについて行われる。駆動制御部214は、現在の各サーボモータ220が備えるエンコーダの出力値が、対象モーション情報の開始時のポーズに係る同サーボモータ220の駆動制御値と異なると判断した場合は処理をS1007に移し、同一であると判断した場合は処理をS1011に移す。
In S1006, the
S1007で、駆動制御部214は、各サーボモータ220を対象モーション情報の開始時のポーズと一致させるよう、該当のサーボモータ220の駆動制御を開始する。
In S1007, the
S1008で、駆動制御部214は、駆動制御中に周囲の障害物とロボット200との衝突が生じるか否かを判断する。本ステップの判断は、例えば検出部213の検出結果に基づいて駆動制御部214が行うものであってよい。駆動制御部214は、駆動制御中に周囲の障害物の衝突が生じると判断した場合は処理をS1009に移し、生じないと判断した場合は処理をS1010に移す。
In S1008, the
S1009で、駆動制御部214は、障害物との衝突を回避するように各サーボモータ220の駆動制御を行う。
In S1009, the
S1010で、駆動制御部214は、各サーボモータ220が対象モーション情報の開始時のポーズと一致したか否かを判断する。駆動制御部214は、各サーボモータ220が対象モーション情報の開始時のポーズと一致したと判断した場合は処理をS1011に移し、一致していないと判断した場合は駆動制御を継続して処理をS1008に戻す。
In S1010, the
一方、S1006において現在の各サーボモータ220が備えるエンコーダの出力値が、対象モーション情報の開始時のポーズに係る同サーボモータ220の駆動制御値と同一であると判断した場合、駆動制御部214はS1011で、対象モーション情報に係る挙動をとらせるよう、各サーボモータ220の駆動制御を開始する。当該駆動制御では、対象モーション情報に記述された、各サーボモータ220をいずれのタイミングで制御目標値とさせるかの情報に基づいて、例えばフィードバック制御が行われるものであってよい。
On the other hand, when it is determined in S1006 that the output value of the encoder provided in each of the
なお、本実施形態のロボット制御システムではモーション情報を構成する際に、該当のモーションにおいて経由するポーズの発生タイミングを示すタイミング情報1222を含め、これに基づいて駆動制御を行う態様について説明するが、本発明の実施はこれに限られるものではない。モーション情報に基づいて駆動制御部214が行う駆動制御は、タイミング情報1222がモーション情報に含められていなくとも、各サーボモータ220の駆動速度の情報に基づいて行われるものであってもよい。
In the robot control system of the present embodiment, when the motion information is configured, the mode of performing the drive control based on the
S1012で、駆動制御部214は、駆動制御中に周囲の障害物とロボット200との衝突が生じるか否かを判断する。駆動制御部214は、駆動制御中に周囲の障害物の衝突が生じると判断した場合は処理をS1013に移し、生じないと判断した場合は処理をS1014に移す。
In S1012, the
S1013で、駆動制御部214は、障害物との衝突を回避するように各サーボモータ220の駆動制御を行う。
In S1013, the
S1014で、駆動制御部214は、対象モーション情報に係る駆動制御が全て終了したか否かを判断する。駆動制御部214は、対象モーション情報に係る駆動制御が全て終了したと判断した場合は処理をS1004に戻し、終了していないと判断した場合は処理をS1012に戻す。
In S1014, the
一方、S1004において動作指示を受信していないと判断した場合、基板制御部211はS1015で、ロボット200周囲の所定範囲内への障害物の進入が生じたか否かを判断する。基板制御部211は、ロボット200周囲の所定範囲内への障害物の進入が生じたと判断した場合は処理をS1016に移し、生じていないと判断した場合は処理をS1004に戻す。
On the other hand, when it is determined in S1004 that the operation instruction has not been received, the
S1016で、駆動制御部214は基板制御部211の制御の下、障害物との衝突を回避するように各サーボモータ220の駆動制御を行う。
In S1016, the
このようにすることで、本実施形態の挙動制御処理では、ユーザ所望の挙動をロボット200にとらせることを実現しつつ、補間が必要な場面や外的要因による障害が発生し得る場面においては、なされた動作指示には依らない動的な挙動制御を行って好適な興趣体験を提供することができる。
By doing so, in the behavior control process of the present embodiment, while realizing that the
以上説明したように、本実施形態の構造体制御システムによれば、組み換え可能な可動部位と不動部位を採用して、所望の外観を形成するロボット等の構造体の構成を可能ならしめつつ、当該構造体にとらせる挙動を設定すること、当該挙動を生じさせるユーザインタフェースをユーザ所望の態様で提供すること、及び当該ユーザインタフェースを用いた構造体の好適な挙動制御を実現することができる。 As described above, according to the structure control system of the present embodiment, it is possible to construct a structure such as a robot that forms a desired appearance by adopting a movable part and an immovable part that can be recombined. It is possible to set the behavior to be taken by the structure, provide a user interface that causes the behavior in a manner desired by the user, and realize suitable behavior control of the structure using the user interface.
なお、本実施形態では制御アプリケーションで構成されたモーション情報が基板メモリ212に格納され、各可動部位の動作制御が行われる際には、スマートフォン100から受信した動作指示に基づいて、対応するモーションのモーション情報が読み出される態様について説明したが、本発明の実施はこれに限られるものではない。例えば、モーション情報が基板メモリ212に格納されるのではなく、制御アプリケーションにおいてロボット200の挙動制御に対する操作入力がなされる度に、制御部101が駆動制御部214に与える制御目標値の情報を順次導出して制御用基板210に送出する態様であってもよい。この場合、各サーボモータ220のフィードバック制御を実現するため、これらサーボモータ220のエンコーダの値が、順次制御用基板210からスマートフォン100に送出されてもよい。
In the present embodiment, the motion information configured by the control application is stored in the
[変形例]
上述した実施形態では、モーションメイク機能において複数のポーズを組み合わせることで、これらのポーズを遷移するモーションを構成する態様について説明したが、モーションの構成方法はこれに限られるものではない。
[Modification example]
In the above-described embodiment, the mode of constructing the motion that transitions between these poses by combining a plurality of poses in the motion make-up function has been described, but the method of constructing the motion is not limited to this.
例えば、起立→前進(歩行)→停止→パンチ→後退といった、連続的に変化する一連の挙動をロボット200にとらせる場合、ユーザは、コントローラGUIにて該当のモーションアイコン801に対する操作入力を順次行えばよい。しかしながら、所望の挙動となるようにするためには好適なタイミングで操作入力が順次行われる必要があり、ユーザによっては正確に操作入力を行うことが困難となり得る。また、このような複数種類のモーションアイコン801をコントローラGUIに配置した場合、該モーションアイコン801が画面中を占有することになるため、他のモーションに係るモーションアイコン801を配置可能なスロット813の数が狭められることになる。
For example, when the
一方で、これらの一連の挙動を生じさせるモーションを、上述した実施形態の制御アプリケーションのモーションメイク機能で構成するためには、ユーザは一連の挙動に含まれるポーズを細かく構成し、これらを順番に配置する必要がある。しかしながら、このような態様は、多量のポーズ構成が求められるだけでなく、構成したモーションが所望の挙動を示すかの確認にも時間を要すため、結果、ユーザが所望する一連の挙動を示すモーションを構成するために、煩雑な操作入力をユーザに強いることになる。 On the other hand, in order to configure the motion that causes these series of behaviors with the motion make function of the control application of the above-described embodiment, the user finely configures the poses included in the series of behaviors and sequentially configures these poses. Need to be placed. However, in such an aspect, not only a large amount of pose configurations are required, but also it takes time to confirm whether the configured motion exhibits the desired behavior, and as a result, a series of behaviors desired by the user are exhibited. In order to compose the motion, the user is forced to input complicated operations.
このため、本変形例の制御アプリケーションでは、複数のモーションを連続させた一連の挙動に対して1つのモーションアイコンを割り当てるべく、モーションメイク機能におけるモーションの構成を、複数のモーションを組み合わせることでも可能に構成する。例えばモーションメイク機能に係り提示される画面は、既に構成されたモーションを組み合わせることで一連の挙動(一連モーション)を構成可能な、図11の画面を含むものであってもよい。 Therefore, in the control application of this modification, in order to assign one motion icon to a series of behaviors in which a plurality of motions are continuous, it is possible to configure the motion in the motion make function by combining a plurality of motions. Configure. For example, the screen presented in relation to the motion make function may include the screen of FIG. 11 in which a series of behaviors (series of motions) can be configured by combining the already configured motions.
図11の例では、既に構成されたモーション情報の各々を示すモーションアイコン1101を一覧表示するモーション選択領域1102と、構成するモーションにおいて経由するモーション群を示す一連モーション構成領域1103を含む。図5(b)の画面と同様に、モーション選択領域1102に配置されるモーションアイコン1101の各々は、表示部110に対するタッチ操作で選択操作が可能に構成されており、ユーザは所望のモーションアイコン1101を選択することで、一連モーション構成領域1103のタイムライン1104上に配置できる。
The example of FIG. 11 includes a
該画面において、タイムライン1104に複数のモーションアイコン1101が配置された状態で保存ボタン1105に対する操作入力がなされたことに応じて、タイムライン1104に配置されたモーションアイコン1101の情報に基づいて一連モーションに係るモーション情報が生成され、記録媒体102に格納される。このようにすることで、ユーザは一連の挙動について、断片的に複数のモーションを構成して組み合わせることでモーション情報の構成が可能であり、コントローラGUI使用時の煩雑な操作入力やモーション構成に要する時間の長期化を伴うことなく、モーション情報を構成することができる。
On the screen, a series of motions are performed based on the information of the
なお、本変形例では詳細を述べなかったが、タイムライン1104の隣接するマスに配置された2つのモーションアイコン1101に係る、モーション間の遷移(前のモーションで最後に現れるポーズと後のモーションで最初に現れるポーズのつなぎ)についても、ポーズを組み合わせてモーションを構成する際と同様に、遷移する際の速度や音出力の設定が可能に構成されるものであってもよい。
Although details were not described in this modification, the transition between motions (the last pose appearing in the previous motion and the subsequent motion) related to the two
[変形例2]
上述した実施形態及び変形例では、モーション情報はユーザにより構成されたモーションそのものを再現するデータになっているものとして説明したが、本発明の実施はこれに限らず、演出等のユーザが構成していない動作を行わせる情報が付加されて構成されるものであってもよい。ロボット200について、例えば好適な振る舞いとなる挙動の条件(遷移するポーズやモーションの組み合わせ)が定められている態様において、ユーザにより構成されたモーションが当該条件に一致、もしくは当該条件との差分が予め定められた許容範囲を満たす場合に、ロボット200において演出を実現せしめる演出情報(所定のタイミングでのSE再生や特定パターンの照明制御等)を含めてモーション情報が構成されるものであってもよい。
[Modification 2]
In the above-described embodiments and modifications, the motion information has been described as data that reproduces the motion itself configured by the user, but the implementation of the present invention is not limited to this, and the motion information is configured by the user such as the effect. It may be configured by adding information for performing an operation that has not been performed. For the
[その他の実施形態]
本発明は上記実施の形態に制限されるものではなく、本発明の精神及び範囲から逸脱することなく、発明の要旨の範囲内で種々の変形・変更が可能である。また本発明に係る構造体制御システムは、1以上のコンピュータを該構造体システムとして機能させるプログラムによっても実現可能である。該プログラムは、コンピュータが読み取り可能な記録媒体に記録されることにより、あるいは電気通信回線を通じて、提供/配布することができる。
[Other Embodiments]
The present invention is not limited to the above-described embodiment, and various modifications and changes can be made within the scope of the gist of the invention without departing from the spirit and scope of the present invention. The structure control system according to the present invention can also be realized by a program that causes one or more computers to function as the structure system. The program can be provided / distributed by being recorded on a computer-readable recording medium or through a telecommunication line.
100:スマートフォン、101:制御部、102:記録媒体、103:メモリ、104:モーションDB、105:表示制御部、106:操作入力部、107:通信部、110:表示部、200:ロボット、210:制御用基板、211:基板制御部、212:基板メモリ、213:検出部、214:駆動制御部、215:音再生部、216:基板通信部、217:接続端子、220:サーボモータ、221:外界センサ、222:スピーカ、230:バックパック 100: Smartphone, 101: Control unit, 102: Recording medium, 103: Memory, 104: Motion DB, 105: Display control unit, 106: Operation input unit, 107: Communication unit, 110: Display unit, 200: Robot, 210 : Control board, 211: Board control unit, 212: Board memory, 213: Detection unit, 214: Drive control unit, 215: Sound reproduction unit, 216: Board communication unit, 217: Connection terminal, 220: Servo motor, 221 : External sensor, 222: Speaker, 230: Backpack
Claims (14)
コンピュータに、
前記構造体の静止状態を設定する処理と、
設定された静止状態を複数用いることで、前記構造体の状態が連続的に変化する運動状態を設定する処理と、
を実行させるプログラム。 It is a program that sets the behavior of a structure having a plurality of movable parts having a drive unit.
On the computer
The process of setting the stationary state of the structure and
A process of setting a motion state in which the state of the structure continuously changes by using a plurality of set rest states, and a process of setting a motion state in which the state of the structure changes continuously.
A program that executes.
運動状態の設定は、該運動状態における前記音再生部の音再生の設定を含む請求項1乃至4のいずれか1項に記載のプログラム。 The structure further includes a sound reproduction unit.
The program according to any one of claims 1 to 4, wherein the setting of the exercise state includes the setting of sound reproduction of the sound reproduction unit in the exercise state.
運動状態の設定は、提示された前記第1の状態表示のうちの選択された前記第1の状態表示に対応付けられた静止状態を、該運動状態に含める静止状態として設定することを含む
請求項1乃至5のいずれか1項に記載のプログラム。 The computer is further made to perform a process of presenting a first state display associated with each of the set stationary states in a selectable manner.
The setting of the motion state includes setting the rest state associated with the selected first state display of the presented first state display as the rest state to be included in the motion state. Item 5. The program according to any one of Items 1 to 5.
指示がなされた状態に前記構造体を移行させる制御信号を出力する処理と、
を前記コンピュータにさらに実行させる請求項1乃至6のいずれか1項に記載のプログラム。 A process of receiving an instruction input to bring the structure into a set motion state,
A process of outputting a control signal that shifts the structure to the state in which the instruction is given, and
The program according to any one of claims 1 to 6, wherein the computer further executes the program.
前記運動状態にさせる指示入力は、前記第2の状態表示の選択に応じて受け付けられる請求項7に記載のプログラム。 The computer is further made to perform a process of presenting a second state display associated with each of the set exercise states in a selectable manner.
The program according to claim 7, wherein the instruction input for making the exercise state is accepted according to the selection of the second state display.
前記プログラムは、画面中の前記第2の状態表示の配置位置の指示を受け付ける処理を、前記コンピュータにさらに実行させる
請求項8に記載のプログラム。 The presentation of the second state display is performed by arranging one or more of the second state displays on the screen.
The program according to claim 8, wherein the program further causes the computer to execute a process of receiving an instruction of an arrangement position of the second state display on the screen.
構成された一連の動作について、該一連の動作に含まれる運動状態を時系列順に配置して提示する処理と、
を前記コンピュータにさらに実行させる請求項1乃至10のいずれか1項に記載のプログラム。 By combining a plurality of set motion states, a process that constitutes a series of operations to be performed by the structure and
With respect to the configured series of movements, a process of arranging and presenting the movement states included in the series of movements in chronological order, and
The program according to any one of claims 1 to 10, wherein the computer further executes the program.
前記駆動部は、前記ロボットの関節である
請求項1乃至11のいずれか1項に記載のプログラム。 The structure is a robot
The program according to any one of claims 1 to 11, wherein the drive unit is a joint of the robot.
前記プログラムは、前記外界センサによる検出結果を受信して提示する処理を、前記コンピュータにさらに実行させる
請求項1乃至12のいずれか1項に記載のプログラム。 The structure further comprises an external sensor.
The program according to any one of claims 1 to 12, wherein the program further causes the computer to perform a process of receiving and presenting a detection result by the external sensor.
前記端末は、
前記構造体の静止状態を設定する第1の設定手段と、
前記第1の設定手段により設定された静止状態を複数用いることで、前記構造体の状態が連続的に変化する運動状態を設定する第2の設定手段と、
前記第2の設定手段により設定された運動状態にさせる指示入力を受け付ける受付手段と、
前記受付手段により指示入力が受け付けられた状態に前記構造体を移行させる制御信号を出力する制御手段と、
を備える構造体制御システム。 A structure control system including a structure having a plurality of movable parts having a drive unit and a terminal for setting the behavior to be taken by the structure.
The terminal
The first setting means for setting the stationary state of the structure and
By using a plurality of stationary states set by the first setting means, a second setting means for setting a motion state in which the state of the structure continuously changes, and a second setting means.
A receiving means for receiving an instruction input for making the exercise state set by the second setting means, and a receiving means.
A control means that outputs a control signal that shifts the structure to a state in which an instruction input is received by the reception means, and
Structure control system.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019212510A JP2021083488A (en) | 2019-11-25 | 2019-11-25 | Program and structure control system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019212510A JP2021083488A (en) | 2019-11-25 | 2019-11-25 | Program and structure control system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2021083488A true JP2021083488A (en) | 2021-06-03 |
Family
ID=76088614
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019212510A Pending JP2021083488A (en) | 2019-11-25 | 2019-11-25 | Program and structure control system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2021083488A (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002103258A (en) * | 2000-09-28 | 2002-04-09 | Sony Corp | Authoring system, authoring method and recording medium |
JP2003266347A (en) * | 2002-03-18 | 2003-09-24 | Sony Corp | Motion editing device for leg type moving robot and motion editing method |
JP2006026828A (en) * | 2004-07-16 | 2006-02-02 | Toyota Motor Corp | Programming method for robot movement |
JP2007213190A (en) * | 2006-02-08 | 2007-08-23 | Advanced Telecommunication Research Institute International | Communication robot improvement system |
JP2012527684A (en) * | 2009-05-19 | 2012-11-08 | サムスン エレクトロニクス カンパニー リミテッド | Page editing method for home screen of mobile terminal and mobile terminal having home screen |
-
2019
- 2019-11-25 JP JP2019212510A patent/JP2021083488A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002103258A (en) * | 2000-09-28 | 2002-04-09 | Sony Corp | Authoring system, authoring method and recording medium |
JP2003266347A (en) * | 2002-03-18 | 2003-09-24 | Sony Corp | Motion editing device for leg type moving robot and motion editing method |
JP2006026828A (en) * | 2004-07-16 | 2006-02-02 | Toyota Motor Corp | Programming method for robot movement |
JP2007213190A (en) * | 2006-02-08 | 2007-08-23 | Advanced Telecommunication Research Institute International | Communication robot improvement system |
JP2012527684A (en) * | 2009-05-19 | 2012-11-08 | サムスン エレクトロニクス カンパニー リミテッド | Page editing method for home screen of mobile terminal and mobile terminal having home screen |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3673725B2 (en) | Information processing system for robots | |
US9594502B2 (en) | Method and system for remote control, and remote-controlled user interface | |
CN104423589A (en) | Haptic warping system | |
US8447428B2 (en) | Method for editing movements of a robot | |
CN101411948A (en) | Electronic toys | |
JP2008254074A (en) | Motion editing device, and its program | |
JP4846416B2 (en) | Combined game system | |
JP2007044798A (en) | Robot communication system | |
JPWO2017199565A1 (en) | Robot, robot operation method, and program | |
JP6625266B1 (en) | Robot controller | |
JP2021083488A (en) | Program and structure control system | |
JP2021083489A (en) | Structure | |
JP6671928B2 (en) | Robot motion control data generation system and motion control data generation method | |
CN118302276A (en) | System and method for controlling a robot in real time using a robot animation system | |
KR100425246B1 (en) | Remote-control robots system | |
US20200164519A1 (en) | Motion control apparatus of action robot and motion generation and control system including the same | |
JP2018161703A (en) | Dialogue control device and robot control system | |
JP6043893B2 (en) | Message transmitting apparatus, message transmitting method, and recording medium | |
KR20210115068A (en) | Terminal for action robot and operating method thereof | |
KR20140109200A (en) | Method for synchronizing between music and robot motion and the system therefor | |
WO2024106335A1 (en) | Computer program, information processing terminal, and control method for same | |
KR101666488B1 (en) | System and method for managing action block for autonomous movement of robot | |
JP2020078033A (en) | Execution device, control method, and program | |
JP2002132404A (en) | Robot system, robot control device and method, and recording medium recorded with robot control program | |
WO2023100375A1 (en) | Communication system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A80 | Written request to apply exceptions to lack of novelty of invention |
Free format text: JAPANESE INTERMEDIATE CODE: A80 Effective date: 20191224 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20210114 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211213 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220930 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220930 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20230320 |