(57)【要約】【課題】複数の駆動手段によって駆動されるロボット装置用の駆動プログラムの作成を容易にすることができるプログラム作成支援システムを提供する。【解決手段】プログラム作成支援システム１は、各サーボ５の接続構成を設定するための設定画面ＳＧを表示する表示装置４と、所定の情報を記憶する制御ユニット３と、を備えている。そして、プログラム作成支援システム１は、仮想３次元空間に配置するための各サーボ５にそれぞれ対応するオブジェクトＳＯを生成し、設定画面ＳＧにて設定された接続構成となるように各オブジェクトＳＯを配置した仮想３次元空間に基づいて２次元画像を生成し、当該２次元画像を前記設定画面ＳＧ上に表示させるものである。更に、設定画面ＳＧに含まれる動作設定領域ＤＳにて接続構成が設定された各サーボ５のそれぞれの動作に対応する駆動信号を生成し、各サーボ５に出力するものである。【選択図】図２
2012035348.tif 000002
【特許請求の範囲】
【請求項１】
直列的に接続された複数の駆動手段によって駆動されるロボット装置用の駆動プログラムの作成を支援するためのプログラム作成支援システムであって、
各駆動手段の接続構成を設定するための設定画面を表示する表示装置と、
前記複数の駆動手段にそれぞれ対応するオブジェクトを仮想３次元空間に配置するために必要な所定の情報を記憶する記憶手段と、
前記記憶手段に記憶された所定の情報に基づいて、前記仮想３次元空間に配置するための各駆動手段のオブジェクトを生成するオブジェクト生成手段と、
前記設定画面にて設定された接続構成となるように前記オブジェクト生成手段が生成した各オブジェクトを配置した前記仮想３次元空間を構築する空間構築手段と、
前記空間構築手段にて構築された前記仮想３次元空間に基づいて２次元画像を生成し、当該２次元画像を前記設定画面上に表示させる画像表示手段と、
前記設定画面にて接続構成が設定された各駆動手段のそれぞれの動作を設定するための動作設定領域を前記設定画面に表示させる動作設定領域表示手段と、
前記動作設定領域に設定された動作に対応する駆動信号を生成し、前記複数の駆動手段の少なくとも一つに対して出力する駆動信号出力手段と、を備えていることを特徴とするプログラム作成支援システム。
【請求項２】
前記複数の駆動手段にそれぞれ対応するオブジェクトを仮想３次元空間に配置するために必要な所定の情報を設定するための情報設定領域を前記設定画面に表示させる情報領域表示手段を更に備えている請求項１に記載のプログラム作成支援システム。
【請求項３】
前記設定画面は、各駆動手段の接続構成として、各駆動手段間の接続面及び接続角度の少なくともいずれか一方が設定されるように構成されている請求項１又は２に記載のプログラム作成支援システム。
【請求項４】
前記所定の情報として、前記仮想３次元空間における前記オブジェクトの各頂点の座標の情報が利用される請求項１〜３のいずれか一項に記載のプログラム作成支援システム。
【請求項５】
前記動作設定領域に設定された動作に対応するモーションデータを生成し、当該モーションデータに基づいて、前記動作設定領域にて設定された駆動手段に対応するオブジェクトを前記仮想３次元空間内でモーションさせるモーション実行手段を更に備え、
前記画像表示手段は、前記仮想３次元空間内の前記オブジェクトのモーションを前記設定画面上に表示させる請求項１〜４のいずれか一項に記載のプログラム作成支援システム。
【請求項６】
直列的に接続された複数の駆動手段によって駆動されるロボット装置用の駆動プログラムの作成を支援するためのプログラム作成支援システムであって、各駆動手段の接続構成を設定するための設定画面を表示する表示装置と、前記複数の駆動手段にそれぞれ対応するオブジェクトを仮想３次元空間に配置するために必要な所定の情報を記憶する記憶手段と、を備えたプログラム作成支援システムに組み込まれるコンピュータを、
前記記憶手段に記憶された所定の情報に基づいて、前記仮想３次元空間に配置するための各駆動手段のオブジェクトを生成するオブジェクト生成手段、前記設定画面にて設定された接続構成となるように前記オブジェクト生成手段が生成した各オブジェクトを配置した前記仮想３次元空間を構築する空間構築手段、前記空間構築手段にて構築された前記仮想３次元空間に基づいて２次元画像を生成し、当該２次元画像を前記設定画面上に表示させる画像表示手段、前記設定画面にて接続構成が設定された各駆動手段のそれぞれの動作を設定するための動作設定領域を前記設定画面に表示させる動作設定領域表示手段及び、前記動作設定領域に設定された動作に対応する駆動信号を生成し、前記複数の駆動手段の少なくとも一つに対して出力する駆動信号出力手段として機能させるように構成されたプログラム作成支援システム用のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、直列的に接続された複数の駆動手段によって駆動されるロボット装置用の駆動プログラムの作成を支援するためのプログラム作成支援システム、及び、そのコンピュータプログラムに関する。
【背景技術】
【０００２】
ロボット等に利用される駆動手段としてサーボが存在する。そして、ロボット等の駆動には複数のサーボが使用される。また、各サーボは、各サーボ間の動作のバラつきを抑制するための調整機と同一チャネルで接続され、当該調整機にて各サーボ間の駆動量や駆動時期といった動作の制御が実行される。このようなサーボであって、同一チャネルの接続を直列的な（数珠つなぎの）接続で実現可能なサーボが知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−５４４００号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１のようなサーボによれば、別途調整機を配置するためのスペースが必要ないので、サーボの配置の自由度が向上するとともに、構成部品全体の重量が抑制される。一方、特許文献１のサーボは、業務用に提供されるものであるので、接続するサーボの数の変更やサーボの動作の変更といた設定が簡単には実行できない。このため、各サーボを駆動させるためのプログラムの作成も容易ではない。
【０００５】
そこで、本発明は、複数の駆動手段によって駆動されるロボット装置用の駆動プログラムの作成を容易にすることができるプログラム作成支援システム及び、そのコンピュータプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明のプログラム作成支援システムは、直列的に接続された複数の駆動手段（５）によって駆動されるロボット装置用の駆動プログラムの作成を支援するためのプログラム作成支援システムであって、各駆動手段の接続構成を設定するための設定画面（ＳＧ）を表示する表示装置（４）と、前記複数の駆動手段にそれぞれ対応するオブジェクト（ＳＯ）を仮想３次元空間に配置するために必要な所定の情報を記憶する記憶手段（１０）と、前記記憶手段に記憶された所定の情報に基づいて、前記仮想３次元空間に配置するための各駆動手段のオブジェクトを生成するオブジェクト生成手段（３）と、前記設定画面にて設定された接続構成となるように前記オブジェクト生成手段が生成した各オブジェクトを配置した前記仮想３次元空間を構築する空間構築手段（３）と、前記空間構築手段にて構築された前記仮想３次元空間に基づいて２次元画像を生成し、当該２次元画像を前記設定画面上に表示させる画像表示手段（３）と、前記設定画面にて接続構成が設定された各駆動手段のそれぞれの動作を設定するための動作設定領域（ＤＳ）を前記設定画面に表示させる動作設定領域表示手段（３）と、前記動作設定領域に設定された動作に対応する駆動信号を生成し、前記複数の駆動手段の少なくとも一つに対して出力する駆動信号出力手段（３）と、を備えている。
【０００７】
本発明によれば、各駆動手段の接続構成を設定画面上で設定することができる。更に、設定した接続構成に対応する接続構成を、各駆動手段に対応するオブジェクトを利用して設定画面上に表示することができる。このため、各駆動手段間の接続構成の追加、削除といった修正を容易に行うことができる。また、接続構成が設定された各駆動手段の動作についても設定画面上で設定することができる。更に、設定画面上で設定された動作に対応する駆動信号が各駆動手段に出力されるので、オブジェクトを通じて確認された接続構成を有する各駆動手段を設定画面で設定した通りに駆動させることができる。このように設定画面に表示されたオブジェクトを通じて接続構成の修正及び、動作の設定がされ、設定通りの駆動信号が生成されるので、複数の駆動手段によって駆動されるロボット装置用の駆動プログラムの作成を容易にすることができる。
【０００８】
本発明のプログラム作成支援システムの一態様において、前記複数の駆動手段にそれぞれ対応するオブジェクトを仮想３次元空間に配置するために必要な所定の情報を設定するための情報設定領域（ＴＳ）を前記設定画面に表示させる情報領域表示手段（３）を更に備えていてもよい。この場合、情報設定領域を通じて各駆動手段に対応するオブジェクトの設定を行うことができる。
【０００９】
接続構成として、どのようなものが設定されてもよい。例えば、本発明のプログラム作成支援システムの一態様において、前記設定画面は、各駆動手段の接続構成として、各駆動手段間の接続面及び接続角度の少なくともいずれか一方が設定されるように構成されていてもよい。
【００１０】
所定の情報として、各駆動手段にそれぞれ対応するオブジェクトを仮想３次元空間に配置できる情報であれば、どのような情報が利用されてもよい。例えば、本発明のプログラム作成支援システムの一態様において、前記所定の情報として、前記仮想３次元空間における前記オブジェクトの各頂点の座標の情報が利用されてもよい。
【００１１】
本発明のプログラム作成支援システムの一態様において、前記動作設定領域に設定された動作に対応するモーションデータを生成し、当該モーションデータに基づいて、前記動作設定領域にて設定された駆動手段に対応するオブジェクトを前記仮想３次元空間内でモーションさせるモーション実行手段（３）を更に備え、前記画像表示手段は、前記仮想３次元空間内の前記オブジェクトのモーションを前記設定画面上に表示させてもよい。この場合、設定画面上にてオブジェクトを通じて、各駆動手段に設定された動作のシミュレーションを行うことができる。これにより、各駆動手段を実際に駆動させる前に、設定された動作の確認を行うことができる。
【００１２】
本発明のプログラム作成支援システム用のコンピュータプログラムは、直列的に接続された複数の駆動手段（５）によって駆動されるロボット装置用の駆動プログラムの作成を支援するためのプログラム作成支援システムであって、各駆動手段の接続構成を設定するための設定画面（ＳＧ）を表示する表示装置（４）と、前記複数の駆動手段にそれぞれ対応するオブジェクト（ＳＯ）を仮想３次元空間に配置するために必要な所定の情報を記憶する記憶手段（１０）と、を備えたプログラム作成支援システムに組み込まれるコンピュータ（３）を、前記記憶手段に記憶された所定の情報に基づいて、前記仮想３次元空間に配置するための各駆動手段のオブジェクトを生成するオブジェクト生成手段、前記設定画面にて設定された接続構成となるように前記オブジェクト生成手段が生成した各オブジェクトを配置した前記仮想３次元空間を構築する空間構築手段、前記空間構築手段にて構築された前記仮想３次元空間に基づいて２次元画像を生成し、当該２次元画像を前記設定画面上に表示させる画像表示手段、前記設定画面にて接続構成が設定された各駆動手段のそれぞれの動作を設定するための動作設定領域（ＤＳ）を前記設定画面に表示させる動作設定領域表示手段及び、前記動作設定領域に設定された動作に対応する駆動信号を生成し、前記複数の駆動手段の少なくとも一つに対して出力する駆動信号出力手段として機能させるように構成されたものである。本発明のコンピュータプログラムを実行することにより、本発明のプログラム作成支援システムを実現することができる。
【００１３】
なお、以上の説明では本発明の理解を容易にするために添付図面の参照符号を括弧書きにて付記したが、それにより本発明が図示の形態に限定されるものではない。
【発明の効果】
【００１４】
以上、説明したように、本発明によれば、複数の駆動手段によって駆動されるロボット装置用の駆動プログラムの作成を容易にすることができる。
【図面の簡単な説明】
【００１５】
【図１】本発明のプログラム作成支援システムの一形態に係る機能ブロック図。
【図２】設定画面の一例を模式的に示す図。
【図３】情報設定領域の詳細を説明するための図。
【図４】リンク構成追加領域の詳細を説明するための図。
【図５】動作設定領域の詳細を説明するための図。
【図６】画像表示処理ルーチンのフローチャートの一例を示す図。
【図７】シミュレーション処理ルーチンのフローチャートの一例を示す図。
【図８】動作制御処理ルーチンのフローチャートの一例を示す図。
【発明を実施するための形態】
【００１６】
以下、本発明に係るロボット装置用の駆動プログラムを作成するためのプログラム作成支援システムの一形態について説明する。図１は、本発明のプログラム作成支援システムの一形態に係る機能ブロック図である。プログラム作成支援システム１は、入力装置２と、制御ユニット３と、表示装置４と、駆動手段としての複数のサーボ５と、を備えている。表示装置４として、例えば液晶ディスプレイ装置等の周知の各種装置が適用されてよい。また、同様に、入力装置２にも、キーボード等の周知の各種装置が適用されてよい。
【００１７】
制御ユニット３は、マイクロプロセッサとその動作に必要な主記憶装置（ＲＡＭ、ＲＯＭ）等の周辺装置とを組み合わせたコンピュータユニットとして構成されている。制御ユニット３には、入力装置２、表示装置４及び、サーボ５が接続されている。その他にも制御ユニット３には、各種の周辺装置が接続され得るが、それらの図示は省略する。
【００１８】
また、図１に示すように、制御ユニット３は、支援プログラムＣＰといった本発明を実現するためのコンピュータプログラム及び、各種データを記憶する記憶手段としての記憶部１０と、記憶部１０に記憶された各種データ等を利用して制御ユニット３の基本的な制御及び、各装置等の制御を実行する制御部１１と、を備えている。制御部１１にて、記憶部１０に記憶された支援プログラムＣＰが実行されることにより、制御部１１には、表示制御部１２と、動作制御部１３とが生成される。表示制御部１２及び、動作制御部１３は、コンピュータハードウェアとコンピュータプログラムとの組み合わせによって実現される論理的装置である。
【００１９】
表示制御部１２は、記憶部１０に記憶された各種データを参照しつつ、記憶部１０に記憶されたコンピュータプログラムを実行することにより、表示装置４に各サーボ５に対する設定をするための設定画面を表示させる。また、動作制御部１２は、記憶部１０に記憶された各種データを参照しつつ、記憶部１０に記憶されたコンピュータプログラムを実行することにより、設定画面にて設定された内容に応じた駆動信号を生成して各サーボ５に出力し、各サーボ５を駆動させる。
【００２０】
なお、制御部１１にて参照される支援プログラムＣＰ等のコンピュータプログラム及び、各種データが、制御ユニット３の記憶部１０に記憶される構成に限定されるものではない。これらのコンピュータプログラム及び、各種データが、制御ユニット３にデータの送受信可能に接続された外部記憶装置に記憶される構成でもよい。このような外部記憶装置として、磁気記憶媒体、光学記憶媒体、ＥＥＰＲＯＭといった不揮発性の記憶媒体を含む記憶装置が利用されてよい。
【００２１】
各サーボ５は、制御ユニット３と接続される第１サーボ５Ａ、第１サーボ５Ａと接続される第２サーボ５Ｂといった具合に直列的に接続されている。第２サーボ５Ｂは第１サーボ５Ａとは接続されているものの制御ユニット３とは接続されていない。第２サーボ５Ｂには動作制御部１３からの駆動信号が第１サーボ５Ａを介して伝達される。このような直列的な接続によりそれぞれの動作が制御されるサーボとして周知のものが利用されてよい。例えば、このような周知なサーボとして、直列的に接続された状態において、上流からの信号に基づいて駆動信号を生成し、生成した駆動信号を下流に出力可能なサーボが利用されてもよい。なお、図１では、２つのサーボのみ図示しているが、必要に応じた数のサーボが接続されてよい。
【００２２】
次に、表示装置４に表示される設定画面の詳細について説明する。図２は、設定画面の一例を模式的に示す図である。図２に示すように、設定画面ＳＧには、上部に位置する動作設定領域ＤＳと、動作設定領域ＤＳの下方に位置するシミュレーション領域ＲＲと、動作設定領域ＤＳの下方であってシミュレーション領域ＲＲの左側に位置するリンク構成追加領域ＲＴと、リンク構成追加領域ＲＴ及び、シミュレーション領域ＲＲの下方に位置する情報設定領域ＴＳとが含まれている。図２の例では、動作設定領域ＤＳを破線で、リンク構成追加領域を一点鎖線で、情報設定領域ＴＳを二点鎖線で、それぞれ囲っている。
【００２３】
図３は、情報設定領域ＴＳの詳細を説明するための図である。図３に示すように、情報設定領域ＴＳには、追加サーボ表示領域ＳＨと、追加サーボ表示領域ＳＨの左側に位置するサーボ情報登録領域ＴＲとが含まれている。サーボ情報登録領域ＴＲには、追加するサーボの名前を登録するためのサーボ名登録欄ＴＮが設けられている。図３の例では、サーボ名登録欄ＴＮには“ＬＩＮＫ０”が入力されている。
【００２４】
サーボ名登録欄ＴＮの下方には、複数の座標設定欄ＺＮが設けられている。座標設定欄ＺＮには、登録対象のサーボを形成する各頂点の座標の情報が入力される。座標の情報は、面毎に入力される。また、座標の情報として互いに直交するＸＹＺ軸の座標の情報が利用される。図３の例では、登録対象のサーボの一つの面を形成する４つの頂点にそれぞれ対応する４つの行が形成されている。また、各行にはＸ軸、Ｙ軸、Ｚ軸にそれぞれ左から順に対応する３つの列が含まれている。具体的には、座標設定欄ＺＮとして、上方から順に第１座標設定欄ＺＮ１、第２座標設定欄ＺＮ２、第３座標設定欄ＺＮ３、第４座標設定欄ＺＮ４の４行が表示されている。また、第１座標設定欄ＺＮ１のＸ軸を示す１列目ＺＮ１Ｘには“０”が、Ｙ軸を示す２列目ＺＮ１Ｙには“８０”が、Ｚ軸を示す３列目ＺＮ１Ｚには“３０”が、それぞれ入力されている。これらの４行、各３列により登録対象のサーボの一つの面が定義される。また、座標設定欄ＺＮの左側には、スクロールバーＲＢが設けられている。スクロールバーＲＢにより、画面がスクロールされ、他の面に対応する情報を入力するための座標設定欄ＺＮが表示される。座標設定欄ＺＮには、登録対象のサーボを形成する全ての頂点の座標の情報が入力される。
【００２５】
座標設定欄ＺＮの更に下方には、削除ボタンＳＳが設けられている。削除ボタンＳＳは、座標設定欄ＺＮに登録された全情報を削除するためのボタンである。図３の例では、第１座標設定欄ＺＮ１に入力されている“０”、“８０”、“３０”、第２座標設定欄ＺＮ２に入力されている“１０”、“８０”、“３０”、第３座標設定欄ＺＮ３に入力されている“１０”、“８０”、“０”、第４座標設定欄ＺＮ４に入力されている“０”、“８０”、“０”の各座標の情報、及び、サーボを形成する他の頂点の情報として他の行（スクロールバーＲＢにてスクロールされた場合の不図示の画面に設けられているもの）に入力されている各座標の情報の全てが削除される。
【００２６】
削除ボタンＳＳの下方には、更に形状登録ボタンＫＢ及び、登録解除ボタンＯＢが設けられている。形状登録ボタンＫＢは座標設定欄ＺＮに登録された各頂点の座標情報にて定義されたサーボを登録するためのボタンである。登録されたサーボ５は、当該サーボ５を定義する座標設定欄ＺＮに入力された各座標の情報が記憶部１０の所定の領域に記憶される。これにより、後述のリンク構成追加領域ＲＴにて選択可能なサーボ５として認識される。一方、登録解除ボタンＯＢは、登録済みのサーボ５の登録を解除するためのボタンである。登録を解除された場合には、所定の領域に記憶されたサーボ５の情報が消去される。このため、登録解除されたサーボ５は、リンク構成追加領域ＲＴでは選択できなくなる。
【００２７】
追加サーボ表示領域ＳＨには、座標設定欄ＺＮの各列にそれぞれ入力された座標の情報に対応するＸＹＺ軸が表示される。ＸＹＺ軸は互いに区別可能なように色分けされて表示される。また、このＸＹＺ軸を基準にして、追加サーボ表示領域ＳＨには、座標設定欄ＺＮの入力内容に基づいて、座標設定欄ＺＮの入力内容にて定義された各頂点を有するサーボ５のオブジェクト、つまり座標設定欄ＺＮに座標情報が入力されたサーボ５に対応するオブジェクトが表示される。図３の例では、各座標設定欄ＺＮに入力された座標情報に基づいて、追加サーボ表示領域ＳＨには、第１サーボ５Ａに対応する四角柱に形成されたオブジェクトＳＯ１が表示されている。
【００２８】
図２に戻り、リンク構成追加領域ＲＴには、対象サーボ表示領域ＴＨと、対象サーボ設定領域ＳＲとが含まれている。対象サーボ設定領域ＳＲには、対象サーボ選択ボタンＳＢが設けられている。対象選択ボタンＳＢは、いわゆるプルダウンメニューが表示されるボタンとして構成されている。このため、対象選択ボタンＳＢが選択されると、情報設定領域ＴＳにて登録されたサーボの名前のリストが表示される。そして、このリストの中から選択されたサーボに対応するオブジェクトが対象サーボ表示領域ＴＨに表示される。このオブジェクトは、情報設定領域ＴＳにて登録された各頂点の座標情報に基づいて生成されたものである。このため、対象サーボ表示領域ＴＨには、座標設定欄ＺＮの各列に対応するＸＹＺ軸が表示される。また、これらのＸＹＺ軸は、追加サーボ表示領域ＳＨと同様に、互いに区別可能なように色分けされて表示される。
【００２９】
また、対象サーボ選択領域ＳＲには、接合面選択ボタンＣＢ及び、向き選択ボタンＭＢが設けられている。接合面選択ボタンＣＢには、進行ボタンＣＢ１と後退ボタンＣＢ２とが含まれている。進行ボタンＣＢ１により対象サーボ表示領域ＴＨに表示されているサーボのオブジェクトの面が順次指定され、後退ボタンＣＢ２により進行ボタンＣＢ１とは逆の順番でオブジェクトの面が順次指定される。また、向き選択ボタンＭＢにも進行ボタンＭＢ１と後退ボタンＭＢ２とが含まれている。進行ボタンＭＢ１により対象サーボ表示領域ＴＨに表示されているサーボのオブジェクトの表示角度が順次切り替えられ、後退ボタンＭＢ２により進行ボタンＭＢ１により進行ボタンＭＢ１とは逆の順番でオブジェクトの表示角度が順次切り替えられる。
【００３０】
対象サーボ設定領域ＳＲには、更に追加ボタンＴＢ及び、削除ボタンＤＢが設けられている。追加ボタンＴＢにより、対象選択ボタンＳＢにて選択されていたサーボ５に対応するオブジェクトについて、対象サーボ表示領域ＴＨに表示されているオブジェクト上で指定されている面が接合面として、対象サーボ表示領域ＴＨに表示されているオブジェクトの角度が接合角度として、それぞれ設定される。そして、追加ボタンＴＢにより、設定された内容が記憶部１０の所定の領域に記憶される。更に、追加ボタンＴＢによる設定により、対象選択ボタンＳＢにて選択されていたサーボ５に対応するオブジェクトの画像がシミュレーション領域ＲＲに表示される。このオブジェクトは、所定の領域に記憶された各頂点の座標情報に基づいて生成されたものである。また、追加ボタンＴＢにより、接続面及び接続角度が設定された各オブジェクトは、設定された接続構成に対応する接続構成にてシミュレーション領域ＲＲに表示される。シミュレーション領域ＲＲには、座標設定欄ＺＮの各列に対応するＸＹＺ軸が表示される。
【００３１】
一方、追加ボタンＴＢとは反対に、対象選択ボタンＳＢにて選択されていたサーボ５に対応するオブジェクトに設定された接合面及び、接続角度の情報が、削除ボタンＤＢにより所定の領域から消去される。これに伴い、シミュレーション領域ＲＲからも対象選択ボタンＳＢにて選択されていたサーボ５に対応するオブジェクトの表示が消去される。
【００３２】
図２の例では、対象選択ボタンＳＢにて、接続構成を追加するサーボとして第２サーボ５Ｂに対応する“ＲＳ６０１ＣＲ”が選択されている。そして、第２サーボ５Ｂに対応する情報として座標設定欄ＺＮにて入力された情報に基づいて、サーボ名登録欄ＴＮに“ＲＳ６０１ＣＲ”と入力された第２サーボ５Ｂに対応するオブジェクトＳＯ２が、対象サーボ表示領域ＴＨに表示されている。また、図２の例では、対象選択ボタンＳＢで選択可能なサーボ５、つまりは、情報設定領域ＴＳにて登録され、所定の領域に記憶されているサーボ５は、第２サーボ５Ｂだけである。このため、第２サーボ５Ｂと他のサーボ５との間の接続面及び、接続角度の設定が行われていない。従って、シミュレーション領域ＲＲには、第２サーボ５Ｂに対応するオブジェクトＳＯ２のみが表示されている。
【００３３】
図４は、リンク構成追加領域ＲＴの詳細を説明するための図である。図４では、図３の例で情報設定領域ＴＳにて登録された第１サーボ５Ａに対応する“ＬＩＮＫ０”が対象選択ボタンＳＢのプルダウンメニューから選択されている。このため、対象サーボ表示領域ＴＨには、第１サーボ５Ａに対応するオブジェクトＳＯ１が表示されている。更に、図４の例は、先にリンク構成追加領域ＲＴにて追加された第２サーボ５Ｂに対応するオブジェクトＳＯ２と第１サーボ５Ａに対応するオブジェクトＳＯ１との間の接続面及び、接続角度が設定された場合を示している。このため、シミュレーション領域ＲＲには、第１サーボ５Ａに対応するオブジェクトＳＯ１と第２サーボ５Ｂに対応するオブジェクトＳＯ２とが、向き選択ボタンＭＢにて指定された角度であって、接合面選択ボタンＣＢにて指定された接合面において接合された状態が表示されている。このように、情報設定領域ＴＳで各サーボ５が登録されることにより各サーボ５に対応するオブジェクトが生成され、登録された各サーボ間の接続構成、つまり接続面、接続角度といった接続関係がリンク構成追加領域ＲＴにて設定されることにより、シミュレーション領域ＲＲに表示される各サーボ５に対応するオブジェクトに反映される。このため、シミュレーション領域ＲＲには、設定画面ＳＧにて設定された接続構成と同様の接続構成を有する各オブジェクトが表示され、結果として実際の各サーボ５間の接続構成が設定画面ＳＧ上でシミュレーションされる。
【００３４】
設定画面ＳＧでは、接続構成が設定された各サーボの動作についても動作設定領域ＤＳにて、設定が可能である。図２に示すように、動作設定領域ＤＳには、動作角度指示部ＫＰが設けられている。また、動作角度指示部ＫＰを中心に左右に延びる角度ゲージＫＧも設けられている。動作角度指示部ＫＰは、角度ゲージＫＧに沿って左右に移動可能に構成されている。角度ゲージＫＧは、中心を基準位置として、右端に向かうに従って基準位置に対するプラス方向の角度が増加し、左端に向かうに従って基準位置に対するマイナス方向の角度が増加するように設定されている。つまり、角度ゲージＫＧ上の動作角度指示部ＫＰの位置によってサーボ５の動作角度が指定される。角度ゲージＫＧの中心の基準位置に対応する角度には、向き選択ボタンＭＢにて設定された接続角度が利用される。また、角度ゲージＫＧの左右両側には角度ゲージＫＧ上の動作角度指示部ＫＰの位置に対応する角度がそれぞれ表示される。また、角度ゲージＫＧ及び、動作角度指示部ＫＰは、各サーボに対応してシミュレーション領域ＲＲに表示されるオブジェクト毎に設けられる。なお、動作角度のプラス方向及び、マイナス方向は基準位置に対して互いに反対方向に対応するものがそれぞれ適用される。
【００３５】
また、角度ゲージＫＧの左側には、当該角度ゲージＫＧが対応すべきサーボの名前が表示されている。この名前としてサーボ名登録欄ＴＮにて入力されたものが利用される。サーボの名前の更に左側には、選択ボタンＶＢが設けられている。また、角度ゲージＫＧ及び、動作角度指示部ＫＰの下方には、全てオンボタンＺＯ及び全てオフボタンＺＦが設けられている。そして、全てオンボタンＺＯにより動作設定領域ＤＳに表示されている各オブジェクトに対応する選択ボタンＶＢの全てが選択状態にされ、全てオフボタンＺＦにより各オブジェクトに対応する選択ボタンＶＢの全てが選択解除状態にされる。また、選択ボタンＶＢは、各サーボ５のモータのＯＮ／ＯＦＦを制御するためのものでもある。つまり、選択ボタンＶＢにより、選択状態となった各サーボ５にはモータがＯＮになり、選択解除状態となった各サーボ５にはモータがＯＦＦとなるような制御信号が出力される。更に、モータがＯＮ状態になることにより、各サーボ５に対応する動作角度指示部ＫＰが角度ゲージＫＧ上の実際の各サーボ５の現在角度に対応する位置となるように瞬時に移動するとともに、その角度が表示される。これにより、実際の各サーボ５の角度等が把握されるため、モータの誤作動が防止される。
【００３６】
図５は、動作設定領域ＤＳの詳細を説明するための図である。図５の例では、シミュレーション領域ＲＲ上にそれぞれサーボ５に対応する４つのオブジェクトＳＯが表示されている。つまり、この例では、リンク構成追加領域ＲＴにて、４つのサーボ５間の接続構成が設定されている。このため、これに対応して、シミュレーション領域ＲＲ上の４つのオブジェクトＳＯにそれぞれ対応する４つの角度ゲージＫＧ及び、動作角度指示部ＫＰが動作設定領域ＤＳに設けられている。そして、この例では、動作角度指示部ＫＰにより、上方から順に“−６４”、“４１”、“７２”、“３１”の角度が各オブジェクトＳＯの動作角度として指定されている。
【００３７】
動作設定領域ＤＳには、更に、モーション登録ボタンＭＴ、シミュレーション動作ボタンＳＤ、ロボット動作ボタンＲＤ、及び、連続記録ボタンＲＫが設けられている。モーション登録ボタンＭＴ及び連続記録ボタンＲＫは、いずれも選択ボタンＶＢが選択状態となっているオブジェクトＳＯに対して動作角度を設定するために設けられている。具体的には、モーション登録ボタンＭＴにより、選択ボタンＶＢが選択状態となっているオブジェクトＳＯに関する動作角度、つまり動作角度指示部ＫＰにて指示されている角度が記憶部１０の所定の領域に記憶される。一方、連続記録ボタンＲＫにより、動作角度指示部ＫＰにて指示される角度が連続的に所定の領域に記憶される。つまり、モーション登録ボタンＭＴは動作角度指示部ＫＰにて最終的に指示された一つの動作角度のみを所定の領域に記憶するために設けられているが、連続記録ボタンＲＫは連続的に動作角度指示部ＫＰにて指示される角度を所定の領域に記憶するために設けられている。
【００３８】
また、シミュレーション動作ボタンＳＤは、モーション登録ボタンＭＴによって記憶された動作に対応するモーションをシミュレーション領域ＲＲ上のオブジェクトＳＯに実行させるために設けられている。つまり、シミュレーション領域ＲＲ上に表示された各サーボ５に対応するオブジェクトＳＯは、シミュレーション動作ボタンＳＤにより、所定の領域に記憶された基準位置から動作角度に対応する角度まで動作する。図５の例では、シミュレーション領域ＲＲ上に表示された４つのオブジェクトＳＯのうちの上から順に３つのオブジェクトＳＯに対応する各選択ボタンＶＢが選択状態となっている場合を示している。このため、シミュレーション領域ＲＲでは、３つのオブジェクトＳＯがモーション登録ボタンＭＴにて記憶された角度に対応して動作するモーションが実行されている。具体的に一部のオブジェクトＳＯについて説明すると、図５の例では、上から３番目に位置する第１サーボ５Ａに対応するオブジェクトＳＯ１が図４に示す基準位置から角度“７２”の位置まで動作する一方で、選択ボタンＶＢが選択解除状態となっている上から４番目に位置する第２サーボ５Ｂに対応するオブジェクトＳＯ２は図４に示す基準位置のまま動作していない。
【００３９】
更に、ロボット動作ボタンＲＤは、所定の領域に記憶された動作角度に基づいて、実際の各サーボ５を駆動させるために設けられている。つまり、シミュレーション領域ＲＲ上でシュミレーションされた動作に対応する動作の駆動信号がロボット動作ボタンＲＤにより生成される。そして、駆動信号が制御ユニット３と接続された第１サーボ５Ａ、更には当該第１サーボ５Ａを介して、当該サーボ５Ａと直列的に接続されている第２サーボ５Ｂ等の各サーボ５に伝達される。これにより、シミュレーション領域ＲＲ上の各オブジェクトＳＯによるモーションと同様の動作が実際の各サーボ５においても実現される。
【００４０】
次に、表示制御部１２及び、動作制御部１３が実行する処理を説明する。表示制御部１２は、設定画面ＳＧの表示等に必要な処理として、図６に示す画像表示処理ルーチン及び、図７に示すシミュレーション処理ルーチンを実行する。図６は、表示制御部１２が実行する画像表示処理ルーチンのフローチャートの一例を示している。図６のルーチンは、シミュレーション領域ＲＲに各サーボ５に対応する接続構成を有する状態で各オブジェクトＳＯを表示するために実行される。このため、図６のルーチンは、追加ボタンＴＢによる処理の指示毎に実行される。
【００４１】
図６のルーチンが開始されると、表示制御部１２は、まずステップＳ１にて、記憶部１０の所定の領域に記憶されている各種の設定内容を取得する。設定内容の一例として、接続面、接続角度及び、座標設定欄ＺＮといった各サーボ５に対応する情報として設定された各種の情報が取得される。続くステップＳ２にて、表示制御部１２は、ステップＳ１で取得した設定内容に従って各サーボ５に対応するオブジェクトＳＯを生成し、生成したオブジェクトＳＯを配置した仮想３次元空間を構築する。この際、表示制御部１２は、接続面及び接続角度といった設定されている接続構成が各オブジェクトＳＯ間に形成されるように各オブジェクトＳＯを配置する。そして、表示制御部１２は、構築した仮想３次元空間を仮想カメラの投影面に投影した２次元画像のデータを生成する。次のステップＳ３では、生成した画像データを設定画面ＳＧの一部として表示装置４に出力して、今回のルーチンを終了する。これにより、サーボ情報登録領域ＴＲで設定された各サーボ５に対応するオブジェクトＳＯが、対象サーボ設定領域ＳＲで設定された接続構成を有する状態で、シミュレーション領域ＲＲに表示される。なお、オブジェクトの生成、仮想３次元空間におけるオブジェクトの配置、仮想カメラの視点や撮影方向等の制御、或いは仮想カメラによる撮影といった一連の処理は、３Ｄコンピュータグラフィックス処理におけるモデリング処理、レンダリング処理といった周知の処理を用いて行われる。
【００４２】
なお、追加サーボ表示領域ＳＨ及び、対象サーボ表示領域ＴＨに各オブジェクトＳＯを表示する場合にも図６と同様のルーチンが実行される。但し、追加サーボ表示領域ＳＨ及び、対象サーボ表示領域ＴＨが対象の場合には、接続構成の反映は不要であるので、ステップＳ２にて、仮想３次元空間が構築される際の各オブジェクトＳＯの配置には接続構成は反映されない。また、ステップＳ２にて、接続構成に関する情報が使用されないので、ステップＳ１にて接続構成に関する情報の取得も省略される。これらの領域ＳＨ、ＴＨに対する画像表示処理ルーチンは、座標設定欄ＺＮへの座標情報の入力若しくは、対象選択ボタンＳＢにおけるサーボの選択といった処理の指示により、シミュレーション領域ＲＲに対する画像表示処理ルーチンと区別される。
【００４３】
図７は、表示制御部１２が実行するシミュレーション処理ルーチンのフローチャートの一例を示している。図７のルーチンは、動作設定領域ＤＳにて登録された各オブジェクトＳＯに対する動作の設定をシミュレーション領域ＲＲ上でシミュレーションするために実行される。このため、図７のルーチンは、シミュレーション動作ボタンＳＤの選択といった処理の指示毎に実行される。
【００４４】
図７のルーチンが開始されると、表示制御部１２は、まずステップＳ１１にて、記憶部１０の所定の領域に記憶されている各サーボ５に対応するオブジェクトＳＯの接続面、接続角度、基準位置、動作角度の情報及び、座標設定欄ＺＮといった各種情報を取得する。続くステップＳ１２にて、表示制御部１２は、ステップＳ１１で取得した情報に基づいて各サーボ５に対応する各オブジェクトＳＯを生成し、設定された接続構成を有する状態で各オブジェクトＳＯを配置した仮想３次元空間を構築する。そして、基準位置及び、動作角度の情報に基づいて、構築した仮想３次元空間の各オブジェクトＳＯを基準位置から動作角度まで動作させるモーションデータを生成する。次のステップＳ１３にて、表示制御部１２は、ステップＳ１２にて生成したモーションデータを、構築した仮想３次元空間内の各オブジェクトＳＯに対して実行する。
【００４５】
次のステップＳ１４にて、表示制御部１２は、構築した仮想３次元空間内で実行されているモーションを仮想カメラの投影面に投影して、２次元画像の動画データを生成する。ステップＳ１５にて、表示制御部１２は、ステップＳ１４で生成した動画データをシミュレーション領域ＲＲに利用した設定画面ＳＧを表示装置４に出力して、今回のルーチンを終了する。これにより、表示装置４には、各サーボ５に対応する各オブジェクトが基準位置から動作角度まで動作するような各オブジェクトＳＯのモーションが表示される。
【００４６】
一方、動作制御部１３は、各サーボ５を駆動させるために必要な処理として、図８に示す動作制御処理ルーチンを実行する。図８は、動作制御部１３が実行する動作制御処理ルーチンのフローチャートの一例を示している。図８のルーチンは、シミュレーション領域ＲＲ上でシミュレーションされた各サーボ５に対応する各オブジェクトのモーションと同様の動作を各オブジェクトに対応する実際の各サーボ５に実行させるためのものである。図８のルーチンは、ロボット動作ボタンＲＤの選択といった処理の指示毎に実行される。
【００４７】
図８のルーチンが開始されると、動作制御部１３は、まずステップＳ２１にて、記憶部１０の所定の領域に記憶されている各サーボ５に対応する各オブジェクトＳＯの動作角度の情報を取得する。続くステップＳ２２にて、動作制御部１２は、ステップＳ２１で取得した動作角度の情報に基づいて、各サーボ５を基準位置から動作角度まで駆動させるための駆動信号を生成する。次のステップＳ２３にて、動作制御部１３は、ステップＳ２２で生成した駆動信号を各サーボ５に対して出力して、今回のルーチンを終了する。これにより、シミュレーション領域ＲＲで実行される各サーボ５に対応する各オブジェクトＳＯによるシミュレーションと同様の動作が実際の各サーボ５によって実行される。なお、図８のルーチンは、各サーボ５を基準位置の状態とするために、上記の処理に加えて、ステップＳ２１にて所定の領域に記憶された各サーボ５の基準位置の情報を取得し、ステップＳ２２にて各サーボ５を現在位置から基準位置の状態まで動作させる駆動信号を生成するように構成されていてもよい。
【００４８】
以上に説明したように、この形態のプログラム作成支援システムによれば、実際の各サーボ５間の接続構成を設定画面ＳＧ上で設定することができる。これにより、新たなサーボの追加或いは削除、及び、各サーボ５間の接続構成を自由に設定、変更することができる。また、各サーボ５に対応する各オブジェクトＳＯを通じて、設定画面ＳＧ上で設定結果のシミュレーションを確認することができる。つまり、設定画面ＳＧ上で接続構成の設定ができるとともに、実際に各サーボを接続する前に、オブジェクトＳＯを通じて設定した接続構成による結果を確認することができるので、接続構成の設定が容易である。
【００４９】
更に、接続構成が設定された各サーボ５の動作についても設定画面上で設定が可能である。また、各サーボ５に対応する各オブジェクト５を利用して設定画面ＳＧ上で設定された動作のシミュレーションを行うことができる。そして、設定画面ＳＧ上で実行されたシミュレーションに対応する動作を実際の各サーボ５に実行させることができる。このため、接続構成も含めた各サーボ５の動作の妥当性を設定画面ＳＧ上で確認することができる。これにより、任意に組み立てられたロボット装置の各サーボ５を駆動させるための駆動プログラムを容易に作成することができるので、各家庭での個人的なロボット装置の作成を支援することができる。
【００５０】
以上の形態では、制御ユニット３が表示制御部１２を通じて図６及び、図７のルーチンを実行することにより、オブジェクト生成手段、空間構築手段、画像表示手段及び、モーション実行手段として機能する。また、制御ユニット３が表示制御部１２を通じて動作設定領域を表示させることにより、動作設定領域表示手段として機能する。更に、制御ユニット３が動作制御部１３通じて図８のルーチンを実行することにより、駆動信号出力手段として機能する。
【００５１】
本発明は上述した形態に限らず、適宜の形態にて実施することができる。上述の形態では、各サーボ５に対応する各オブジェクトＳＯを仮想３次元空間に配置するために必要な所定の情報を設定するための領域として、情報設定領域ＴＳが設定画面ＳＧ上に設けられているが、このような領域が設けられる構成に限定されるものではない。例えば、情報設定領域ＴＳが省略され、各サーボ５に対応する各オブジェクトＳＯを仮想３次元空間に配置するために必要な所定の情報が予め記憶部に記憶されているような構成でもよい。また、所定の情報として、各サーボ５に対応する各頂点の情報を利用する構成に限定されるものでもない。各サーボ５に対応する各オブジェクトＳＯを仮想３次元空間に配置するために必要な所定の情報として、例えば、各サーボ５の形状を形成するための複数のパターンが記憶され、この複数のパターンの組合せによってオブジェクトを生成するように構成されていてもよい。
【００５２】
また、上述の形態では、各サーボ５の接続構成を設定するための情報として、接続面及び、接続角度が設定されているが、接続構成を設定するための情報は、このような情報に限定されるものはない。例えば、接続面内の具体的な接続位置を更に接続構成の情報として利用するような構成でもよい。
【００５３】
また、制御部１１は、設定した動作に対応する駆動信号を生成するプログラムを作成し、このプログラムを記憶部に記憶させるように構成されていてもよい。この場合、作成したプログラムを別の装置で利用することができる。これにより、例えば、作成したプログラムを携帯電話にて利用することもできる。この場合、携帯電話のＢｌｕｅＴｏｏｔｈ等の無線通信を利用して、携帯電話をロボット装置のコントローラとして機能させることができる。これにより、ロボット装置の活動範囲を拡大することができるとともに、ロボット装置をコントロールするためのプロポが不要になるためコストを削減することができる。
【符号の説明】
【００５４】
１  プログラム作成支援システム
２  入力装置
３  制御ユニット（記憶手段、オブジェクト生成手段、空間構築手段、画像表示手段、動作設定領域表示手段、駆動信号出力手段、情報領域表示手段、モーション実行手段、コンピュータ）
４  表示装置
５  サーボ（駆動手段）
ＳＧ  設定画面
ＳＯ  オブジェクト
ＤＳ  動作設定領域
ＴＳ  情報設定領域
ＣＰ  支援プログラム
【図１】
2012035348.tif 000003
【図２】
2012035348.tif 000004
【図３】
2012035348.tif 000005
【図４】
2012035348.tif 000006
【図５】
2012035348.tif 000007
【図６】
2012035348.tif 000008
【図７】
2012035348.tif 000009
【図８】
2012035348.tif 000010