(57)【要約】【課題】ロボットの動作プログラムの作成を効率良くできるようにする。【解決手段】動作プログラム作成装置１は、プログラム作成者がアイコンをプログラム上に配置するプログラム作成部１１と、配置されたプログラムを検出し解釈する指令解釈部１３と、配置したアイコンまでの動作プログラムをロボットに対応して自動的にシミュレーションするシミュレーション部１４と、配置したアイコンが実行可能かどうかを評価し、評価結果をプログラム作成者にＧＵＩを通じて通知する結果評価部１５と、を備えている。【選択図】図１
2008142788.tif 000002
【特許請求の範囲】
【請求項１】
グラフィカルユーザインターフェース（以下、ＧＵＩ）を使用してロボットへの指令を表すアイコン（グラフィカルシンボル）を動作順に配置していくことでロボットの動作プログラムを作成する動作プログラム作成装置の動作プログラム作成支援方法において、
プログラム作成者が前記アイコンをプログラム上に配置したことを検出し、配置した前記アイコンまでの動作プログラムを前記ロボットに対応したシミュレーション部を用いて自動的にシミュレーションし、配置した前記アイコンが実行可能かどうかを結果評価部において評価し、評価結果を前記プログラム作成者に前記ＧＵＩを通じて通知することにより動作プログラム作成を支援することを特徴とする動作プログラム作成支援方法。
【請求項２】
新たに前記アイコンが配置された際に、前記ロボットの関節角度や速度等のロボットの状態が特定できる位置まで前記動作プログラム上のアイコンを検索して遡り、前記ロボットの状態が特定できる位置から前記新たに配置されたアイコンまでを前記シミュレーション部によりシミュレーションを行うことを特徴とする請求項１記載の動作プログラム作成支援方法。
【請求項３】
最後に配置された前記アイコンで前記シミュレーション部によりシミュレーションした前記ロボットの状態を保持し、最後に配置された前記アイコンの次の位置に新たに前記ロボットへの指令を表すアイコンが配置された場合に、保持した前記ロボットの状態からシミュレーションを行いアイコン評価に掛かる時間を短縮することを特徴とする請求項１記載の動作プログラム作成支援方法。
【請求項４】
前記動作プログラムの途中に前記アイコンが挿入された場合、前記挿入されたアイコンの位置から前記ロボットの状態が特定できる位置まで前記動作プログラムを遡り、特定できた位置から挿入した前記アイコンまでを前記シミュレーション部によってシミュレーションし、前記アイコンの挿入が可能かを前記結果評価部で評価し、評価結果を前記プログラム作成者に前記ＧＵＩを通じて通知し、次に、挿入した前記アイコンから前記動作プログラムの最後に配置されているアイコンまでを前記シミュレーション部によりシミュレーションし、前記結果評価部により評価を行い、前記アイコンを挿入することで問題の発生する場合、その問題の発生するアイコンを前記プログラム作成者に前記ＧＵＩを通じて通知することで動作プログラム作成を支援することを特徴とする請求項１記載の動作プログラム作成支援方法。
【請求項５】
前記動作プログラムの途中の前記アイコンが削除された場合、前記挿入されたアイコンの位置から前記ロボットの状態が特定できる位置まで前記動作プログラムを遡り、特定できた位置から前記プログラムの最後に配置されている前記アイコンまでを前記シミュレーション部によりシミュレーションし、前記結果評価部により評価を行い、前記アイコンを削除することで問題の発生する場合、その問題の発生するアイコンを前記プログラム作成者に前記ＧＵＩを通じて通知することで動作プログラム作成を支援することを特徴とする請求項１記載の動作プログラム作成支援方法。
【請求項６】
前記シミュレーション部により得られた各アイコンでの前記ロボットの状態を、各アイコンに記録し、前記アイコンを編集した際の前記シミュレーション部によるシミュレーションに直前のアイコンに記録されたロボットの状態を使用することで、前記シミュレーションと前記結果評価部における評価に要する時間を短縮することを特徴とする請求項１記載の動作プログラム作成支援方法。
【請求項７】
前記アイコンがパラメータを要求するものである場合に、前記シミュレーション部と予め記憶部に記憶されているロボットの稼動範囲情報とから入力可能なパラメータ値の範囲を求め、前記プログラム作成者に対して前記ＧＵＩを通じて提示することで動作プログラム作成を支援することを特徴とする請求項１記載の動作プログラム作成支援方法。
【請求項８】
ＧＵＩを使用してロボットへの指令を表すアイコン（グラフィカルシンボル）を動作順に配置していくことでロボットの動作プログラムを作成する動作プログラム作成装置において、プログラム作成者が前記アイコンをプログラム上に配置するプログラム作成部と、前記配置されたプログラムを検出し解釈する指令解釈部と、配置した前記アイコンまでの動作プログラムを前記ロボットに対応して自動的にシミュレーションするシミュレーション部と、配置した前記アイコンが実行可能かどうかを評価し、評価結果を前記プログラム作成者に前記ＧＵＩを通じて通知する結果評価部と、を備えたことを特徴とする動作プログラム作成装置。
【請求項９】
新たに前記アイコンが配置された際に、前記ロボットの関節角度や速度等のロボットの状態が特定できる位置まで前記動作プログラム上のアイコンを検索して遡るプログラム検索部を備え、前記ロボットの状態が特定できる位置から前記新たに配置されたアイコンまでを前記シミュレーション部によりシミュレーションを行うことを特徴とする請求項８記載の動作プログラム作成装置。
【請求項１０】
最後に配置された前記アイコンで前記シミュレーション部によりシミュレーションした前記ロボットの状態を保持し、最後に配置された前記アイコンの次の位置に新たに前記ロボットへの指令を表すアイコンが配置された場合に、保持した前記ロボットの状態からシミュレーションを行うシミュレーション部を備えてアイコン評価にかかる時間を短縮することを特徴とする請求項８記載の動作プログラム作成装置。
【請求項１１】
前記動作プログラムの途中に前記アイコンが挿入された場合、前記挿入されたアイコンの位置から前記ロボットの状態が特定できる位置まで前記動作プログラムを遡り、特定できた位置から挿入した前記アイコンまでを前記シミュレーション部によってシミュレーションし、前記アイコンの挿入が可能かを前記結果評価部で評価し、評価結果を前記プログラム作成者に前記ＧＵＩを通じて通知し、次に、挿入した前記アイコンから前記動作プログラムの最後に配置されているアイコンまでを前記シミュレーション部によりシミュレーションし、前記結果評価部により評価を行い、前記アイコンを挿入することで問題の発生する場合、その問題の発生するアイコンを前記プログラム作成者に前記ＧＵＩを通じて通知することを特徴とする請求項８記載の動作プログラム作成装置。
【請求項１２】
前記動作プログラムの途中の前記アイコンが削除された場合、前記挿入されたアイコンの位置から前記ロボットの状態が特定できる位置まで前記動作プログラムを遡り、特定できた位置から前記プログラムの最後に配置されている前記アイコンまでを前記シミュレーション部によりシミュレーションし、前記結果評価部により評価を行い、前記アイコンを削除することで問題の発生する場合、その問題の発生するアイコンを前記プログラム作成者に前記ＧＵＩを通じて通知することを特徴とする請求項８記載の動作プログラム作成作成装置。
【請求項１３】
前記シミュレーション部により得られた各アイコンでの前記ロボットの状態を、各アイコンに記録し、前記アイコンを編集した際の前記シミュレーション部によるシミュレーションに直前のアイコンに記録されたロボットの状態を使用することで、前記シミュレーションと前記結果評価部における評価に要する時間を短縮することを特徴とする請求項８記載の動作プログラム作成装置。
【請求項１４】
前記アイコンがパラメータを要求するものである場合に、前記シミュレーション部と予め記憶部に記憶されているロボットの稼動範囲情報とから入力可能なパラメータ値の範囲を求め、前記プログラム作成者に対して前記ＧＵＩを通じて提示することを特徴とする請求項８記載の動作プログラム作成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットの動作プログラムをＧＵＩ（Graphical User Interface）、すなわち、ユーザに対する情報の表示にグラフィックを多用し、大半の基礎的な操作をマウスなどのポインティングデバイスによって行なうことができるユーザインターフェース、を利用してグラフィカルに作成する動作プログラム作成支援方法およびそれを用いた動作プログラム作成装置に関する。
【背景技術】
【０００２】
従来のロボットの動作プログラムの作成は、作成した動作プログラムをシミュレーションにより確認し、動作の不都合が発見された場合、動作プログラムのその部分を修正し、再度シミュレーションにより確認する手順を繰り返し行っている。例えば、特許文献１に開示の「ロボットのシミュレーション装置」はテキストによるロボット言語とシミュレーションによるロボットのモデルを画面に表示するものである。
図７は特許文献１に開示の「ロボットのシミュレーション装置」の表示画面の表示例である。図７において、２１１はＣＲＴディスプレイの左半分、２１２はＣＲＴディスプレイの右半分、２１３はカーソルである。ＣＲＴディスプレイの左半分２１１にはロボット言語により作成した動作プログラム、右半分２１２にはロボットをシンボル化したグラフィックが表示される。２１３は、シミュレーション実行した場合に、次に実行される動作を記述した部分を指し示す。
画面の下部に各種コマンドのラベルがあるので、挿入・削除・修正・実行をカーソル２１３で選んでロボットの動作プログラムを記述するテキストを作成すると、それが画面の左半分２１１に表示されていく。これと同時に、テキスト管理部がこのテキストを読み込んで、インタプリタ部に送り、インタプリタ部ではテキストを解釈し、ロボットを動作させる内容であれば、その動作のための軌道・ポイントデータを取り出して、ロボット制御部へ送る。ロボット制御部は送られてきた軌道・ポイントデータを基にロボット制御信号を作成し、シミュレータ部に送り、シミュレータ部はＣＲＴディスプレイの右半分２１２にシンボル化されたロボットを表示し、かつロボット制御部から送られてきたロボット制御信号に基づいてアニメーションでロボットの動きを表示する。
このようにして、特許文献１によれば、プログラムの検証および修正を容易かつ効率的に行うものである。
【０００３】
また、特許文献２に開示の「プログラム作成装置」も公知である。
これは、動作プログラムの効率的な作成を目的とするもので、ロボット言語により作成した動作プログラムの行を指定すると、その行の指令が移動指令であった場合、指定されたパラメータに従って位置データの表示やロボットのモデルを表示するものである。
図８は特許文献２に開示の「プログラム作成装置」の表示画面の表示例１であり、図９は同じく表示画面の表示例２である。
この発明は、命令内容を示す命令文字列及びその命令内容に対応する数値データのパラメータ番号を有する命令データと、上記数値データとを入力する入力手段、この入力手段により入力された命令データ及び数値データを格納すると共に、予め特定の命令文字列を設定記憶する記憶手段、上記入力手段により入力された上記命令文字列が上記記憶手段に設定記憶されている命令文字列と同一であるか否かを解釈する命令解釈手段、この命令解釈手段により上記命令文字列が予め設定記憶されている命令文字列と同一であると判断された際に、その命令文字列を有する命令データの上記パラメータ番号に基づいて、その命令データに対応する上記数値データを上記記憶手段から読み出すデータ管理手段、この管理手段により読み出された上記数値データを表示装置にその命令データと共に表示させる表示制御手段とから構成されており、表示制御手段により表示装置の表示画面上に命令データ及び数値データを表示させる際、その数値データに基づく制御対象物の姿勢をモデル化して表示するものである。
【０００４】
図８において、２３Ａは表示装置が表示する表示画面、２３１は命令データを表示する命令ウインドウ、２３２は位置データを表示する位置ウインドウ、２３１１は操作者が注目している命令データの命令行である。
このようにカーソルにより注目行２３１１を移動指令の行へ移動すると、表示装置上に表示画面２３２が表示され位置データが表示されるようになる。
また、図９にの表示画面２３Ａおいては、動作プログラム２３１のうちの１つをカーソルで指示すると、その行２３１１が移動指令である際にモデルウインドウ２３４にパラメータに従ったロボットのモデルが表示されるようになる。
また、パラメータがロボットの稼動範囲内にあるかを評価し、問題がある場合は表示により通知するようにしている。
【特許文献１】特開平１−２５０１０９号公報（第３図）
【特許文献２】特許第３４３５９５４号（図３、図９）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１により作成した動作プログラムの確認をシミュレーションを実行して行う方法では、シミュレーション実行とプログラム修正をロボットの動作に不都合がなくなるまで繰り返して行う必要があることや毎回動作プログラムの最初からシミュレーションを行うことから動作プログラム作成の効率が良いとは言えない。
また、特許文献２の指令パラメータをロボットの動作範囲テーブルを用いて評価する方法では、与えられたパラメータの一点のみを用いて評価を行うため、相対移動や相対速度変更など相対的な指令には対応できないといった問題及び、パラメータで与えた値は動作範囲に入っているが、実機を動作させると干渉等が発生して動作できないといった場合、実際に動作させるまで動作の不都合がわからないという問題がある。
本発明はこのような問題に鑑みてなされたものであり、ロボットの動作に不都合がでない動作プログラムを効率よく作成することができる動作プログラム作成支援方法および動作プログラム作成装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記問題を解決するため、請求項１記載の発明は、動作プログラム作成支援方法に係り、ＧＵＩを使用してロボットへの指令を表すアイコン（グラフィカルシンボル）を動作順に配置していくことでロボットの動作プログラムを作成する動作プログラム作成装置の動作プログラム作成支援方法において、プログラム作成者が前記アイコンをプログラム上に配置したことを検出し、配置した前記アイコンまでの動作プログラムを前記ロボットに対応したシミュレーション部を用いて自動的にシミュレーションし、配置した前記アイコンが実行可能かどうかを結果評価部において評価し、評価結果を前記プログラム作成者に前記ＧＵＩを通じて通知することで動作プログラム作成を支援することを特徴としている。
また、請求項２記載の発明は、請求項１記載の動作プログラム作成支援方法において、新たに前記アイコンが配置された際に、前記ロボットの関節角度や速度等のロボットの状態が特定できる位置まで前記動作プログラム上のアイコンを検索して遡り、前記ロボットの状態が特定できる位置から前記新たに配置されたアイコンまでを前記シミュレーション部によりシミュレーションを行うことを特徴としている。
また、請求項３記載の発明は、請求項１記載の動作プログラム作成支援方法において、最後に配置された前記アイコンで前記シミュレーション部によりシミュレーションした前記ロボットの状態を保持し、最後に配置された前記アイコンの次の位置に新たに前記ロボットへの指令を表すアイコンが配置された場合に、保持した前記ロボットの状態からシミュレーションを行いアイコン評価にかかる時間を短縮することを特徴としている。
また、請求項４記載の発明は、請求項１記載の動作プログラム作成支援方法において、前記動作プログラムの途中に前記アイコンが挿入された場合、前記挿入されたアイコンの位置から前記ロボットの状態が特定できる位置まで前記動作プログラムを遡り、特定できた位置から挿入した前記アイコンまでを前記シミュレーション部によってシミュレーションし、前記アイコンの挿入が可能かを前記結果評価部で評価し、評価結果を前記プログラム作成者に前記ＧＵＩを通じて通知し、次に、挿入した前記アイコンから前記動作プログラムの最後に配置されているアイコンまでを前記シミュレーション部によりシミュレーションし、前記結果評価部により評価を行い、前記アイコンを挿入することで問題の発生する場合、その問題の発生するアイコンを前記プログラム作成者に前記ＧＵＩを通じて通知することで動作プログラム作成を支援することを特徴としている。
また、請求項５記載の発明は、請求項１記載の動作プログラム作成支援方法において、前記動作プログラムの途中の前記アイコンが削除された場合、前記挿入されたアイコンの位置から前記ロボットの状態が特定できる位置まで前記動作プログラムを遡り、特定できた位置から前記プログラムの最後に配置されている前記アイコンまでを前記シミュレーション部によりシミュレーションし、前記結果評価部により評価を行い、前記アイコンを削除することで問題の発生する場合、その問題の発生するアイコンを前記プログラム作成者に前記ＧＵＩを通じて通知することで動作プログラム作成を支援することを特徴としている。
また、請求項６記載の発明は、請求項１記載の動作プログラム作成支援方法において、前記シミュレーション部により得られた各アイコンでの前記ロボットの状態を、各アイコンに記録し、前記アイコンを編集した際の前記シミュレーション部によるシミュレーションに直前のアイコンに記録されたロボットの状態を使用することで、前記シミュレーションと前記結果評価部における評価に要する時間を短縮することを特徴としている。
また、請求項７記載の発明は、請求項１記載の動作プログラム作成支援方法において、前記アイコンがパラメータを要求するものである場合に、前記シミュレーション部と予め記憶部に記憶されているロボットの稼動範囲情報とから入力可能なパラメータ値の範囲を求め、前記プログラム作成者に対して前記ＧＵＩを通じて提示することで動作プログラム作成を支援することを特徴としている。
また、請求項８記載の発明は、動作プログラム作成装置に係り、ＧＵＩを使用してロボットへの指令を表すアイコン（グラフィカルシンボル）を動作順に配置していくことでロボットの動作プログラムを作成する動作プログラム作成装置において、プログラム作成者が前記アイコンをプログラム上に配置するプログラム作成部と、前記配置されたプログラムを検出し解釈する指令解釈部と、配置した前記アイコンまでの動作プログラムを前記ロボットに対応して自動的にシミュレーションするシミュレーション部と、配置した前記アイコンが実行可能かどうかを評価し、評価結果を前記プログラム作成者に前記ＧＵＩを通じて通知する結果評価部と、を備えたことを特徴としている。
また、請求項９記載の発明は、請求項８記載の動作プログラム作成装置において、新たに前記アイコンが配置された際に、前記ロボットの関節角度や速度等のロボットの状態が特定できる位置まで前記動作プログラム上のアイコンを検索して遡るプログラム検索部を備え、前記ロボットの状態が特定できる位置から前記新たに配置されたアイコンまでを前記シミュレーション部によりシミュレーションを行うことを特徴としている。
また、請求項１０記載の発明は、請求項８記載の動作プログラム作成装置において、最後に配置された前記アイコンで前記シミュレーション部によりシミュレーションした前記ロボットの状態を保持し、最後に配置された前記アイコンの次の位置に新たに前記ロボットへの指令を表すアイコンが配置された場合に、保持した前記ロボットの状態からシミュレーションを行うシミュレーション部を備えてアイコン評価にかかる時間を短縮することを特徴としている。
また、請求項１１記載の発明は、請求項８記載の動作プログラム作成装置において、前記動作プログラムの途中に前記アイコンが挿入された場合、前記挿入されたアイコンの位置から前記ロボットの状態が特定できる位置まで前記動作プログラムを遡り、特定できた位置から挿入した前記アイコンまでを前記シミュレーション部によってシミュレーションし、前記アイコンの挿入が可能かを前記結果評価部で評価し、評価結果を前記プログラム作成者に前記ＧＵＩを通じて通知し、次に、挿入した前記アイコンから前記動作プログラムの最後に配置されているアイコンまでを前記シミュレーション部によりシミュレーションし、前記結果評価部により評価を行い、前記アイコンを挿入することで問題の発生する場合、その問題の発生するアイコンを前記プログラム作成者に前記ＧＵＩを通じて通知することを特徴としている。
また、請求項１２記載の発明は、請求項８記載の動作プログラム作成装置において、前記動作プログラムの途中の前記アイコンが削除された場合、前記挿入されたアイコンの位置から前記ロボットの状態が特定できる位置まで前記動作プログラムを遡り、特定できた位置から前記プログラムの最後に配置されている前記アイコンまでを前記シミュレーション部によりシミュレーションし、前記結果評価部により評価を行い、前記アイコンを削除することで問題の発生する場合、その問題の発生するアイコンを前記プログラム作成者に前記ＧＵＩを通じて通知することを特徴としている。
また、請求項１３記載の発明は、請求項８記載の動作プログラム作成装置において、前記シミュレーション部により得られた各アイコンでの前記ロボットの状態を、各アイコンに記録し、前記アイコンを編集した際の前記シミュレーション部によるシミュレーションに直前のアイコンに記録されたロボットの状態を使用することで、前記シミュレーションと前記結果評価部における評価に要する時間を短縮することを特徴としている。
また、請求項１４記載の発明は、請求項８記載の動作プログラム作成装置において、前記アイコンがパラメータを要求するものである場合に、前記シミュレーション部と予め記憶部に記憶されているロボットの稼動範囲情報とから入力可能なパラメータ値の範囲を求め、前記プログラム作成者に対して前記ＧＵＩを通じて提示することを特徴としている。
【発明の効果】
【０００７】
本発明によると、動作プログラムに入力時に動作に不都合の発生する指令を確実に知ることができ、効率良く動作プログラムを作成することができる。
また、ロボットの状態が確定する位置まで遡ってシミュレーションを実行するため、相対値をパラメータとする指令の場合でも指令実行の評価ができる。
また、動作プログラムの最初からシミュレーションを行う必要がないためシミュレーションに掛かる時間が短縮でき、効率よく動作プログラムを作成することができる。
また、シミュレーションによるロボットの状態を直前のアイコンに記録するため、シミュレーション実行時間を短縮でき、効率良く動作プログラムを作成することができる。
また、プログラムの途中へのアイコンの挿入や削除にもシミュレーションを自動的に実行するため動作に不都合のでるアイコンを知ることができる。
また、シミュレーションに直前のアイコンに記録されたロボットの状態を使用できるので、シミュレーションに要する時間を短縮でき、効率良く動作プログラムを作成することができる。
また、入力できるパラメータの範囲が提示されるため、効率よく動作プログラムを作成することができる。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の実施の形態について、図に基づいて説明する。
【実施例１】
【０００９】
図１は本発明の実施例１に係る動作プログラム作成装置を示す構成図である。
図１において、１は本発明による動作プログラム作成支援方法を用いた動作プログラム作成装置である。１１はプログラム作成部であり、アイコン（グラフィカルシンボル）を配置することによる動作プログラム作成の全般を制御するものである。１３は指令解釈部であり、プログラム作成部１１によって作成された動作プログラムを解釈し、シミュレーション部１４へ指令を送るものである。指令解釈部１３は動作プログラムの最初から解釈することや指定された途中の位置からの解釈も可能なものである。シミュレーション部１４は、動作プログラムを解釈した指令解釈部１３からの指令に従ってロボットの動作シミュレーションを行うものである。シミュレーション部１４は指令解釈部１３からの指令で動作した際、動作範囲の逸脱や干渉等が発生する場合は警告を発するものである。１５は結果評価部であり、シミュレーション部１４でのシミュレーションによる動作が問題なく行われたかをシミュレーション部１４からの警告情報から評価し、その結果をプログラム作成部１１に送るものである。１６は記憶部であり、プログラム作成部１１により作成された動作プログラムの記録やプログラム作成部１１により使用される各種データ、例えばアイコンの形状データ等が記録されている。１７はキーボードであり、プログラム作成部１１の操作、例えばパラメータ値の入力等を行うものである。１８はマウスであり、キーボード１７と同様にプログラム作成部１１の操作、例えばアイコンの配置等を行うものである。１９は表示装置であり、プログラム作成部１１により作成された動作プログラム等を表示するものである。
【００１０】
図２は、作成された動作プログラムの表示の一例を示す図であり、表示装置１９に表示される。
図２において複数配置された線で接続された箱は、動作プログラムの制御や
ロボットへの指令を表すアイコンである。例えば、図において、アイコンＩ１のＢｅｇｉｎやＩ９のＥｎｄと表示されたアイコンは動作プログラムの開始と終了を表すアイコンであり、Ｉ２のＲｏｂｏｔＩＤと表示されたアイコンは以下に続くアイコンが対象とするロボットを指定するアイコンである。
Ｉ３のＳｅｔＳｐｄ、Ｉ４とＩ８のＭＬｅｆｔ、Ｉ５〜Ｉ７のＭＬｉｎｅａｒと表示されたアイコンはロボットへの指令を表すアイコンであり、それぞれ、動作速度指令、関節角度指定による動作指令、直線補間による動作指令を表している。ロボットへの指令を表すアイコンには、速度や角度、座標等のパラメータを設定する必要がある。設定方法としては、各アイコンをクリックすることにより、パラメータ入力ウィンドウを表示し、パラメータを入力する等いくつかの方法がある。
指令解釈手段１３は、このような動作プログラムのアイコンを線で接続された
順に解釈し、実行する。
【００１１】
図３は、動作プログラム作成装置において、動作プログラム作成を支援する主要部の処理手順を示すフローチャートである。以下、この図を用いて本発明の実施例１の処理を順を追って説明する。
まず、図２に示すような動作プログラム入力画面で、プログラム作成者がプログラム作成部１１でアイコンを配置する（Ｓ１）。
配置されたアイコンが、移動指令や速度設定指令などのロボットの動作に関わるアイコンである場合（Ｓ２）、配置したアイコンの直前のアイコンまでを指令解釈部１３で解釈し、シミュレーション部１４を用いてシミュレーション実行する（Ｓ３）。
ここで、Ｓ２からＳ３はプログラム作成者がアイコンを配置した際にプログラム作成部１１によって自動的に実行される。この段階では、ここには記述していない前回のシミュレーション実行によってエラーの無い事がわかっているため、結果の評価は特に行う必要はない。
次に、プログラム作成者が配置したアイコンに、プログラム作成部１１を用いて関節角度や速度値といったパラメータを入力する（Ｓ４）。
配置したアイコンへのパラメータの入力が確定した際に、直前のアイコンから配置したアイコンへのシミュレーションを、指令解釈部１３、シミュレーション部１４を用いて行う（Ｓ５）。
Ｓ５もＳ２、Ｓ３と同様に自動的に行われる。
Ｓ５でシミュレーションした結果から動作範囲の逸脱や動作速度超過といったエラーの有無を結果評価部１５を用いて評価する（Ｓ６）。
Ｓ６における評価において、シミュレーションによるエラーが無い場合、配置したアイコンは実機においても問題なく動作可能であるので、Ｓ１に戻り動作プログラム作成を継続する。Ｓ６の評価において、シミュレーションによるエラーが検出された場合、表示装置１９に配置したアイコンが動作不可能な事やその理由を示すメッセージを表示する（Ｓ７）。このままでは、実行可能な動作プログラムとならないので、プログラム作成者はアイコンの削除やパラメータの再入力といったアイコンの編集を行う（Ｓ８）。
アイコンの編集がパラメータの再入力の場合はＳ４に戻り、実行継続される。また、配置したアイコンの削除、新たなアイコンの配置の場合、Ｓ１に戻り実行継続される（Ｓ９）。
このようにして、アイコン配置時にシミュレーションを行い、配置したアイコンが動作に不都合が無いことの検証が自動的に行われるので、動作に不都合の無い動作プログラムを効率良く作成することができる。
【実施例２】
【００１２】
以下、本発明の実施例２について図を参照して説明する。
図４は本発明の実施例２に係る動作プログラム作成装置を示す構成図である。
図４において、実施例１の図１と異なる構成は１２のプログラム検索部が追加されたこと  である。このプログラム検索部１２は、プログラム作成部１１で新たにアイコンが配置された際に、配置されたアイコン位置から動作プログラムを遡り、ロボットの関節角度や動作速度等の状態が確定するアイコンを検索する。
なお、その他の図１との同一構成であるプログラム作成部１１、指令解釈部１３、シミュレーション部１４、結果評価部１５、記憶部１６、キーボード１７、マウス１８及び表示装置１９については重複する説明は省略する。
【００１３】
図５は図４に示すプログラム作成装置の主要部の処理手順を示すフローチャートである。
以下、この図を用いて実施例２の処理を説明する。
まず、実施例１と同様にプログラム作成者がアイコンを配置する（Ｓ１１）。
配置されたアイコンが、移動命令や速度設定指令等の動作に関わるアイコンの場合（Ｓ１２）、プログラム検索部１２を用いて、新たに配置されたアイコンから動作プログラムを遡り、ロボットの関節角度の絶対値や動作速度値が確定されるアイコンが検索される（Ｓ１３）。
次に、プログラム検索部１２により検索されたアイコンから新たに配置したアイコンの直前までが指令解釈部１３に送られシミュレーション部１４を用いてシミュレーションされる（Ｓ１４）。
ここで、Ｓ１２からＳ１４は実施例１と同様にプログラム作成者がアイコンを配置した際に自動的に実行される。
次に、実施例１と同様に配置したアイコンにパラメータが入力されると（Ｓ１５）、直前のアイコンから配置したアイコンへのシミュレーションが指令解釈部１３とシミュレーション部１４で実行される（Ｓ１６）。
以下Ｓ１７からＳ１９や以降の処理は実施例１のＳ６からＳ８や以降の処理と同様である。
以上のようにして、アイコン配置時にロボットの状態を確定できるアイコン位置を検索し、その部分のみをシミュレーションすることでシミュレーションに要する時間の短縮が図れる。
また、ロボットの状態が確定する位置を検索するため相対移動指令を表すアイコンを配置した場合でもアイコンの評価が可能である。
【実施例３】
【００１４】
図６は本発明の実施例３に係るプログラム作成装置の主要部の処理手順を示すフローチャートである。
以下、この図を用いて実施例３の処理を説明する。
まず、先の実施例と同様にプログラム作成者がアイコンを配置する（Ｓ２１）。続けてアイコンにパラメータを入力する（Ｓ２２）。
次に、配置されたアイコンが動作に関わるアイコンであるかを判定し（Ｓ２３）、動作に関わらない場合Ｓ２１に戻りアイコンの配置から継続実行する。動作に関わる場合、Ｓ２４へ進み、記述しない前回のアイコン配置による後述のＳ２６で記録されたシミュレーション上のロボットの最新状態から新たに配置されアイコンへのシミュレーションを実行する（Ｓ２４）。
シミュレーション結果を評価し（Ｓ２５）、シミュレーションにエラーが無い場合、シミュレーション部１４内または他の何らかの手段により現在のロボットの状態を記録し（Ｓ２６）、Ｓ２１に戻りアイコンの配置から継続実行する。シミュレーションにエラーがあった場合は、先に示した実施例と同様の処理を行う。
以上の手順で処理を行うことにより、前に行ったシミュレーションの最新状態から新たに配置したアイコンのシミュレーションを行うので、シミュレーションにかかる時間が大幅に短縮でき、動作プログラム作成装置の反応速度の向上により動作プログラム作成の効率をあげることができる。
【実施例４】
【００１５】
以下、実施例４の処理として、動作プログラムの途中のアイコンが削除された場合や挿入された場合について説明する。
先ず、動作プログラムの途中のアイコンが削除された場合、削除されたアイコンの直前のアイコンから実施例２と同様にプログラム検索部１２を用いてロボットの状態が確定できるアイコンを検索する。
次に、削除されたアイコンの直前のアイコンと直後のアイコンが接続されたり、削除したアイコンの位置に新たなアイコンが挿入されたりした場合、検索した結果得られたアイコンから動作プログラムの最後までを各部を用いてシミュレーションを実行し、結果評価部１５により評価を行う。評価の結果、どのアイコンにおいても動作に不都合が無い場合、アイコン配置から継続実行する。評価の結果、何れかのアイコンにおいて動作に不都合が出る場合、不都合の出るアイコンと不都合の内容を表示装置１９に表示する。
また、途中のアイコンを削除することなく、動作プログラムの途中にアイコンを挿入した場合も同様で、挿入したアイコンの直前の位置からプログラム検索部１２を用いてロボットの状態を確定できるアイコンを検索する。
次に、検索した結果得られたアイコンから挿入したアイコンも含めて、動作プログラムの最後まで各部を用いてシミュレーションを行い、結果の評価を行う。以降の処理は前述の処理と同様である。
以上のようにすることで、動作プログラムの途中のアイコンが削除されたり、新たにアイコンが挿入された場合でも本発明の動作プログラム作成支援方法が発揮されるため、効率良く動作プログラムの作成を行うことができる。
また、実施例３におけるＳ２６でロボットの状態をそれぞれのアイコンに行い、そのまま保持するようにし、削除や挿入を行ったアイコンの直前の動作に関わるアイコンに記録されたロボットの状態を用いてシミュレーションを行うことで、プログラム検索部による検索にかかる時間を短縮することができ、動作プログラム作成装置の反応速度の向上により動作プログラム作成の効率をあげることができる。
【００１６】
以上、述べたようにすることで動作プログラムを効率良く作成することができるが、さらに、先に示した実施例のように新たにアイコンを配置した場合に、その直前の動作に関わるアイコンでのシミュレーションによるロボットの状態（各関節角度や手先の位置、姿勢、設定速度）と予め記憶部１６に保存されたロボットの動作範囲情報とを使用し、動作に関わるアイコンへのパラメータ入力の際に入力可能な値の範囲をプログラム作成者に対して、表示装置１９を通して提示することが可能となる。例えば、アイコンが関節角度の絶対値入力による移動指令を表す場合は、動作範囲情報に保存された各関節の動作範囲を提示する。また、関節角度の相対値入力による移動指令を表す場合は、シミュレーションによる直前のロボットの現在の各関節角度と動作範囲情報から相対値として入力可能な値を提示する。その範囲を求める方法は、例えば、動作範囲情報の＋側最大角度から現在の角度を減算することで＋側に入力可能な最大値が、−側最大角度（符号付）から現在の角度を減算することで−側に入力可能な最大値を得ることができる。速度等も同様にして範囲を提示することができる。
このようにパラメータ入力時に入力可能なパラメータの範囲を提示することで、より効率的に動作プログラムの作成を行うことができる。
【図面の簡単な説明】
【００１７】
【図１】本発明の実施例１に係るプログラム作成装置の構成を示す図である。
【図２】図１に示すプログラム作成装置の表示の一例を示す図である。
【図３】図１に示すプログラム作成装置の主要部の処理手順を示すフローチャートである。
【図４】本発明の実施例２に係るプログラム作成装置の構成を示す図である。
【図５】図４に示すプログラム作成装置の主要部の処理手順を示すフローチャートである。
【図６】本発明の実施例３に係るプログラム作成装置の主要部の処理手順を示すフローチャートである。
【図７】従来のロボットのシミュレーション装置の表示画面を示す図である。
【図８】従来のプログラム作成装置の表示画面を示す図である。
【図９】図８に示す表示画面のロボットモデルを示す図である。
【符号の説明】
【００１８】
１  プログラム作成装置
１１  プログラム作成部
１２  プログラム検索部
１３  指令解釈部
１４  シミュレーション部
１５  結果評価部
１６  記憶部
１７  キーボード
１８  マウス
１９  表示装置
【図１】
2008142788.tif 000003
【図２】
2008142788.tif 000004
【図３】
2008142788.tif 000005
【図４】
2008142788.tif 000006
【図５】
2008142788.tif 000007
【図６】
2008142788.tif 000008
【図７】
2008142788.tif 000009
【図８】
2008142788.tif 000010
【図９】
2008142788.tif 000011