(57)【要約】【課題】教示者が簡単に制御プログラムの作成を行える技術を提供する。【解決手段】ロボット制御装置は、力制御動作を含む作業の動作フローを作成するための動作フロー作成領域を含む入力画面を表示装置に表示させる表示制御部と、作成された動作フローを制御プログラムに変換する変換部と、制御プログラムを実行してロボットを制御する制御実行部と、を備える。表示制御部は、制御実行部によって制御プログラムが実行された後に、ロボットの動作が予め設定した所定の動作でない場合に、予め設定した所定の動作を実現するための対策案を提示する画面を表示装置に表示させる。【選択図】図１１
2019188545.tif 000002
【特許請求の範囲】
【請求項１】
力検出器を備えるロボットの作業の制御プログラムを作成するロボット制御装置であって、
力制御動作を含む作業の動作フローを作成するための動作フロー作成領域を含む入力画面を表示装置に表示させる表示制御部と、
作成された動作フローを制御プログラムに変換する変換部と、
前記制御プログラムを実行して前記ロボットを制御する制御実行部と、
を備え、
前記表示制御部は、前記制御実行部によって前記制御プログラムが実行された後に、前記ロボットの動作が予め設定した所定の動作でない場合に、前記予め設定した所定の動作を実現するための対策案を提示する画面を前記表示装置に表示させる、ロボット制御装置。
【請求項２】
請求項１に記載のロボット制御装置であって、
前記表示制御部は、前記制御プログラムの実行結果から前記予め設定した所定の動作ではないことを示す項目を表示させ、前記画面を前記表示装置に表示させる、ロボット制御装置。
【請求項３】
請求項に記載のロボット制御装置であって、
前記対策案は、前記力制御動作を特定する複数のパラメーターのうち、前記項目に関連するパラメーターを含む、ロボット制御装置。
【請求項４】
請求項２又は３に記載のロボット制御装置であって、
前記表示制御部は、前記項目が表示された場合に、前記画面に前記パラメーターの現在設定値と推奨設定値とを表示させる、ロボット制御装置。
【請求項５】
請求項４に記載のロボット制御装置であって、
前記表示制御部は、前記画面に、前記パラメーターの前記推奨設定値から算出した第１特性値を表示させる、ロボット制御装置。
【請求項６】
請求項５に記載のロボット制御装置であって、
前記表示制御部は、前記画面に、前記力制御動作の目標値を入力する目標値フィールドに前記目標値が入力されると、前記目標値と前記パラメーターの前記推奨設定値から算出した第２特性値を表示させる、ロボット制御装置。
【請求項７】
請求項４〜６のいずれか一項に記載のロボット制御装置であって、
前記表示制御部は、前記画面に、前記パラメーターの新規設定値を入力する設定値フィールドを表示させる、ロボット制御装置。
【請求項８】
請求項７に記載のロボット制御装置であって、
前記表示制御部は、前記設定値フィールドに入力された前記新規設定値を用いて前記制御実行部によって前記制御プログラムが実行された後に、前記ロボットの動作が前記予め設定した所定の動作である場合、前記制御プログラムの実行結果を提示する画面を前記表示装置に表示させる、ロボット制御装置。
【請求項９】
請求項４〜８のいずれか一項に記載のロボット制御装置であって、
前記表示制御部は、前記パラメーターの設定値の履歴を表示させ、前記履歴から前記パラメーターの過去の設定値を選択可能な形態で前記画面を表示させる、ロボット制御装置。
【請求項１０】
力検出器を備えるロボットの作業の制御プログラムを作成するロボット制御装置であって、
プロセッサーを備え、
前記プロセッサーは、
（ａ）力制御動作を含む作業の動作フローを作成するための動作フロー作成領域を含む入力画面を表示装置に表示させ、
（ｂ）作成された動作フローを制御プログラムに変換し、
（ｃ）前記制御プログラムを実行して前記ロボットを制御する、
ように構成されており、
前記プロセッサーは、前記制御プログラムを実行した後に、前記ロボットの動作が予め設定した所定の動作でない場合に、前記予め設定した所定の動作を実現するための対策案を提示する画面を前記表示装置に表示させる、ロボット制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボット制御装置に関する。
【背景技術】
【０００２】
ティーチングプレイバック方式のロボットでは、教示された結果に基づきロボットの作業を表す制御プログラム（ジョブ）が作成される。ティーチングプレイバック方式とは、教示によって作成された制御プログラムを実行することによって、ロボットを動作させる方式を意味する。制御プログラムを作成する手順は、「ティーチング（教示）」と呼ばれており、従来から様々なティーチング方法が工夫されている。特許文献１では、力検出器を利用した力制御を実行するロボットの制御プログラムを作成するために、ロボットの動作のパラメーターを設定するためのガイダンス情報を教示装置の画面に表示する技術が開示されている。教示者（作業者）は、このガイダンス情報に従ってパラメーターを設定することによりティーチングを行うことが可能である。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１４−２３３８１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述した従来技術では、動作の各種のパラメーターを設定することは可能であるが、一般に、作業の制御プログラムを作成する教示作業は熟練を要するので、教示者がより簡単に制御プログラムの作成を行える技術が望まれていた。
【課題を解決するための手段】
【０００５】
（１）本発明の第１の形態によれば、力検出器を備えるロボットの作業の制御プログラムを作成するロボット制御装置が提供される。このロボット制御装置は、力制御動作を含む作業の動作フローを作成するための動作フロー作成領域を含む入力画面を表示装置に表示させる表示制御部と、作成された動作フローを制御プログラムに変換する変換部と、前記制御プログラムを実行して前記ロボットを制御する制御実行部と、を備える。前記表示制御部は、前記制御実行部によって前記制御プログラムが実行された後に、前記ロボットの動作が予め設定した所定の動作でない場合に、前記予め設定した所定の動作を実現するための対策案を提示する画面を前記表示装置に表示させる。
【０００６】
（２）本発明の第２の形態によれば、力検出器を備えるロボットの作業の制御プログラムを作成するロボット制御装置が提供される。このロボット制御装置は、プロセッサーを備え、前記プロセッサーは、（ａ）力制御動作を含む作業の動作フローを作成するための動作フロー作成領域を含む入力画面を表示装置に表示させ、（ｂ）作成された動作フローを制御プログラムに変換し、（ｃ）前記制御プログラムを実行して前記ロボットを制御するように構成されている。前記プロセッサーは、前記制御プログラムを実行した後に、前記ロボットの動作が予め設定した所定の動作でない場合に、前記予め設定した所定の動作を実現するための対策案を提示する画面を前記表示装置に表示させる。
【図面の簡単な説明】
【０００７】
【図１】ロボットシステムの斜視図。
【図２】複数のプロセッサーを有する制御装置の一例を示す概念図。
【図３】複数のプロセッサーを有する制御装置の他の例を示す概念図。
【図４】制御装置の機能ブロック図。
【図５】ロボット制御プログラムの作成手順のフローチャート。
【図６Ａ】力検出器を用いる作業の制御プログラムの作成手順を示す説明図。
【図６Ｂ】力検出器を用いる作業の制御プログラムの作成手順を示す説明図。
【図６Ｃ】力検出器を用いる作業の制御プログラムの作成手順を示す説明図。
【図６Ｄ】力検出器を用いる作業の制御プログラムの作成手順を示す説明図。
【図７】動作フローを構成する動作の分類と動作オブジェクトの例を示す説明図。
【図８Ａ】接触オブジェクトの動作の概要を示す説明図。
【図８Ｂ】脱力オブジェクトの動作の概要を示す説明図。
【図８Ｃ】押付け探りオブジェクトの動作の概要を示す説明図。
【図８Ｄ】押付け移動オブジェクトの動作の概要を示す説明図。
【図９】力検出器で測定される力の変化の一例を示すグラフ。
【図１０Ａ】動作フローに従って作業を実行した結果を示す画面の一例を示す説明図。
【図１０Ｂ】パラメーター調整後の再実行結果を示す画面の一例を示す説明図。
【図１１】力制御動作の問題点の対策案を提示する画面の一例を示す説明図。
【図１２】図１１の対策案提示領域を拡大して示す説明図。
【図１３】対策案提示領域の他の例を示す説明図。
【図１４】対策案提示領域の他の例を示す説明図。
【図１５】対策案提示領域の他の例を示す説明図。
【図１６】対策案提示領域の他の例を示す説明図。
【図１７】対策案提示領域の他の例を示す説明図。
【図１８】動作フローを制御プログラムに変換する際の入力画面の一例を示す説明図。
【発明を実施するための形態】
【０００８】
A. 第１実施形態：
図１は、第１実施形態におけるロボットシステムを示す斜視図である。このロボットシステムは、カメラ３０と、搬送装置５０と、ロボット１００と、ロボット制御装置２００と、を備えている。ロボット１００とロボット制御装置２００は、ケーブル又は無線を介して通信可能に接続される。
【０００９】
このロボット１００は、アーム１１０の先端にあるアームフランジ１２０に各種のエンドエフェクターを装着して使用される単腕ロボットである。アーム１１０は６つの関節Ｊ１〜Ｊ６を備える。関節Ｊ２、Ｊ３、Ｊ５は曲げ関節であり、関節Ｊ１、Ｊ４、Ｊ６はねじり関節である。関節Ｊ６の先端にあるアームフランジ１２０には、対象物（ワーク）に対して把持や加工等の作業を行うための各種のエンドエフェクターが装着される。アーム１１０の先端近傍の位置を、ツールセンターポイント（ＴＣＰ）として設定可能である。ＴＣＰは、エンドエフェクターの位置の基準として使用される位置であり、任意の位置に設定可能である。例えば、関節Ｊ６の回転軸上の所定位置をＴＣＰとして設定することができる。なお、本実施形態では６軸ロボットを用いているが、他の関節機構を有するロボットを使用してもよい。
【００１０】
ロボット１００は、アーム１１０の可動範囲内においてエンドエフェクターを任意の位置で任意の姿勢とすることができる。アームフランジ１２０には、力検出器１３０と、エンドエフェクター１４０とが設置されている。本実施形態ではエンドエフェクター１４０はグリッパーであるが、他の任意の種類のエンドエフェクターを使用可能である。力検出器１３０は、エンドエフェクター１４０に作用する３軸の力と、当該３軸まわりに作用するトルクとを計測する６軸センサーである。力検出器１３０は、固有の座標系であるセンサー座標系において互いに直交する３個の検出軸と平行な力の大きさと、当該３個の検出軸まわりのトルクの大きさとを検出する。なお、関節Ｊ６以外の関節Ｊ１〜Ｊ５のいずれか１つ以上に力検出器としての力センサーを備えても良い。なお、力検出器は、制御する方向の力やトルクを検出できればよく、力検出器１３０のように直接的に力やトルクを検出する手段や、ロボットの関節のトルクを検出して間接的に力やトルクを求める手段などを用いてもよい。また、力を制御する方向のみの力やトルクを検出してもよい。
【００１１】
ロボット１００が設置された空間を規定する座標系をロボット座標系と呼ぶ。ロボット座標系は、水平面上において互いに直交するｘ軸とｙ軸と、鉛直上向きを正方向とするｚ軸とによって規定される３次元の直交座標系である。また、ｘ軸周りの回転角をＲｘで表し、ｙ軸周りの回転角をＲｙで表し、ｚ軸周りの回転角をＲｚで表す。ｘ，ｙ，ｚ方向の位置により３次元空間における任意の位置を表現でき、Ｒｘ，Ｒｙ，Ｒｚ方向の回転角により３次元空間における任意の姿勢を表現できる。以下、「位置」と表記した場合、位置と姿勢（position and orientation）も意味し得ることとする。また、「力」と表記した場合、力とトルクも意味し得ることとする。
【００１２】
本実施形態において、搬送装置５０によってワークＷＫ２が搬送される。搬送装置５０は、搬送ローラー５０ａ，５０ｂを備えており、これらの搬送ローラー５０ａ，５０ｂを回転させることによって搬送面を移動させ、搬送面上に載置されたワークＷＫ２を搬送することができる。搬送装置５０の上方には、カメラ３０が設置されている。このカメラ３０は、搬送面上のワークＷＫ２が視野に含まれるように設置されている。ワークＷＫ２の上面には、嵌合孔Ｈ２が形成されている。エンドエフェクター１４０は、ワークＷＫ２の嵌合孔Ｈ２に、エンドエフェクター１４０で把持したワークＷＫ１を嵌合させる作業を行うことができる。なお、この嵌合作業は、搬送面を停止させた状態で行っても良く、或いは、搬送面を移動させつつ実行しても良い。但し、搬送装置５０やカメラ３０は省略可能である。
【００１３】
ロボット制御装置２００は、アーム１１０と、エンドエフェクター１４０と、搬送装置５０と、カメラ３０とを制御する。ロボット制御装置２００の機能は、例えば、プロセッサーとメモリーを備えるコンピューターがコンピュータープログラムを実行することによって実現される。
【００１４】
図２は、複数のプロセッサーによってロボットの制御装置が構成される一例を示す概念図である。この例では、ロボット１００及びその制御装置２００の他に、パーソナルコンピューター４００，４１０と、ＬＡＮなどのネットワーク環境を介して提供されるクラウドサービス５００とが描かれている。パーソナルコンピューター４００，４１０は、それぞれプロセッサーとメモリーとを含んでいる。また、クラウドサービス５００においてもプロセッサーとメモリーを利用可能である。これらの複数のプロセッサーの一部又は全部を利用して、ロボット１００の制御装置を実現することが可能である。
【００１５】
図３は、複数のプロセッサーによってロボットの制御装置が構成される他の例を示す概念図である。この例では、ロボット１００の制御装置２００が、ロボット１００の中に格納されている点が図２と異なる。この例においても、複数のプロセッサーの一部又は全部を利用して、ロボット１００の制御装置を実現することが可能である。
【００１６】
図４は、制御装置２００の機能を示すブロック図である。制御装置２００は、プロセッサー２１０とメモリー２２０と表示装置２６０と入力装置２７０とを備えている。メモリー２２０は、メインメモリーと不揮発性メモリーとを含む。プロセッサー２１０は、メモリー２２０に予め格納されたプログラム命令２２２を実行することにより、ロボット制御プログラム作成部２４０と制御実行部２５０の機能を実現する。ロボット制御プログラム作成部２４０は、表示制御部２４２と変換部２４４を含んでいる。表示制御部２４２は、ロボット１００の作業の動作フローを作成するための入力画面（後述）を表示装置２６０に表示させる。変換部２４４は、入力画面で作成された動作フローを制御プログラム２２４に変換する。変換された制御プログラム２２４は、メモリー２２０に格納される。制御プログラム２２４は、機械語などの低級言語で記述されていてもよく、或いは、ロボット言語などの高級言語で記述されていてもよい。制御実行部２５０は、こうして作成された制御プログラム２２４を実行することによって、作業の動作をロボット１００に実行させる。入力装置２７０は、キーボードやマウスなどの入力デバイスであり、教示者による入力や設定が入力装置２７０を用いて行われる。なお、ロボット制御プログラム作成部２４０と制御実行部２５０の機能の一部又は全部をハ―ドウェア回路で実現しても良い。ロボット制御プログラム作成部２４０の機能については更に後述する。
【００１７】
図５は、ロボット制御プログラムの作成手順を示すフローチャートであり、図６Ａ〜図６Ｄは、その手順の説明図である。図５の処理は、教示者がロボット制御プログラム作成部２４０を実現するアプリケーションプログラムを起動することによって開始される。
【００１８】
図６Ａは、ロボット制御プログラム作成部２４０が起動すると表示制御部２４２が表示装置２６０に表示するウィンドウＷ１の一例を示している。このウィンドウＷ１は、１つ以上の動作を含む作業の動作フローを作成するための入力画面に相当する。ウィンドウＷ１は、以下の領域を含んでいる。
（１）メインビュー領域ＭＶ：後述する動作オブジェクト及び条件分岐オフジェクトの選択肢や、制御プログラムの実行結果、トラブルシュート（問題点の対策案）などを表示する領域である。
（２）動作フロー作成領域ＦＬ：複数のオブジェクトがグラフィカルに配置された動作フローを編集可能に表示する領域である。なお、動作フローで表される作業を「シーケンス」とも呼ぶ。
（３）シーケンス表示領域ＳＱ：シーケンスのツリー構造を表示する領域である。
（４）パラメーター設定領域ＰＲ：作業全体に関する作業パラメーターや、個々の動作に関する動作パラメーターの設定を行うための領域である。
（５）結果領域ＲＳ：制御プログラムの実行結果を表示する領域である。
（６）実行指示領域ＲＮ：制御プログラムの実行を指示するための領域である。
【００１９】
図６Ａの例では、ウィンドウＷ１内の複数の領域は、異なるフレームとして分割されているが、フレームに分割されていなくても良い。ウィンドウＷ１の左上には、作業の制御プログラムの作成手順の開始を指示するためのボタンＢＴ１が設けられている。教示者がボタンＢＴ１を押すと、図５のステップＳ１１０を開始するための入力画面が表示制御部２４２によって表示装置２６０に表示される。なお、本明細書では、教示者が、作業パラメーターを入力画面のボックスやフィールドに入力することを「入力する」と言い、教示者によって入力されたパラメーターを受け付けて内部の値を変更することを「設定する」と言う。
【００２０】
図６Ｂは、ステップＳ１１０を開始するための入力画面としてのウィンドウＷ２の一例を示している。このウィンドウＷ２は、以下の領域を含んでいる。
（１）シーケンス名設定領域Ｆ２１：新たなシーケンスの名称を設定するための領域である。図６Ｂの例では、シーケンス名が「Ｓｅｑ１」と入力されている。
（２）ロボット選択領域Ｆ２２：使用するロボットのタイプを複数の選択肢から選択するための領域である。図６Ｂの例では、「ＲＢ１」というタイプのロボットが選択されている。
（３）シーケンスコピー指示領域Ｆ２３：既に作成済みのシーケンスをコピーすることを指定するための領域である。この領域には、例えば、予めメモリー２２０内に登録されている複数のシーケンスのシーケンス名がプルダウンメニューとして表示される。シーケンスコピーを使用する場合には、図６Ｃで説明する設定は不要となり、後述する図６Ｄの画面に移行する。
【００２１】
本実施形態では、シーケンスコピーを使用せずに図６Ｃの画面に進む。すなわち、図６Ｂにおいて、教示者がシーケンスコピー指示領域Ｆ２３の入力を行うこと無く「次へ」ボタンを押すと、表示装置２６０の表示内容が図６Ｃに示すウィンドウＷ１に変更される。
【００２２】
図６Ｃは、図６Ａに示したウィンドウＷ１において、動作フローの作成を開始する状態を示している。ウィンドウＷ１の各領域には以下のような内容が表示される。
（１）メインビュー領域ＭＶ：
動作フローを構成する動作や条件分岐の分類を示す複数のカテゴリーと、各カテゴリーに属するオブジェクトの名称及びアイコンと、オブジェクトの内容の説明と、オブジェクトの概要を示す図とが表示される。メインビュー領域ＭＶに表示されたオブジェクトは、ドラッグアンドドロップ等の操作によって動作フロー作成領域ＦＬ内の動作フローに任意に追加可能である。
（２）動作フロー作成領域ＦＬ：
１つ以上のオブジェクトがグラフィカルに配置された動作フローが編集可能に表示される。図６Ｃに示すように、動作フローの作成の開始時には、シーケンスのラベルを示すシーケンスブロックＳＢ１のみが動作フロー作成領域ＦＬ内に配置される。
（３）シーケンス表示領域ＳＱ：
動作フロー作成領域ＦＬに表示されたシーケンスのツリー構造が表示される。
（４）パラメーター設定領域ＰＲ：
動作フロー作成領域ＦＬに配置されたブロックのいずれかが選択されると、選択されたブロックに対するパラメーターが表示される。
【００２３】
図６Ｄは、ウィンドウＷ１の動作フロー作成領域ＦＬ内に、教示者が動作フローを作成した状態を示している。この例では、シーケンスブロックＳＢ１の後に、接触オブジェクトＯＢ１と、脱力オブジェクトＯＢ２と、押付け探りオブジェクトＯＢ３と、押付けオブジェクトＯＢ４のブロックがこの順に配置されている。各オブジェクトのブロックの中には、そのオブジェクトの名称が表示される。４つのオブジェクトＯＢ１〜ＯＢ４はすべて動作オブジェクトであるが、条件分岐オブジェクトを配置することも可能である。条件分岐オブジェクトとは、予め定められた条件が成立するか否かに応じて、その進行先が切り換えられるオブジェクトを意味する。動作のカテゴリーと動作オブジェクトについては更に後述する。動作フローには、メインビュー領域ＭＶに表示されたオブジェクトを任意に追加可能であり、また、動作フロー中の任意のオブジェクトを削除することも可能である。
【００２４】
図６Ｄにおいて、動作フロー作成領域ＦＬに配置されたブロックＳＢ１，ＯＢ１〜ＯＢ４のいずれかが選択されると、選択されたブロックに対するパラメーターがパラメーター設定領域ＰＲに表示される。例えば、シーケンスブロックＳＢ１が選択されると、シーケンス全体に関する作業パラメーターが表示される。また、オブジェクトのブロックＯＢ１〜ＯＢ４のいずれかが選択されると、そのオブジェクトに関するパラメーターが表示される。図６Ｄの例では、接触オブジェクトＯＢ１に関するパラメーターが表示されている。これらのパラメーターは、必要に応じて変更される。
【００２５】
図７は、動作フローを構成する際に利用可能な複数の動作オブジェクトの例を示しており、図８Ａ〜図８Ｄは幾つかの動作オブジェクトの動作の概要を示している。複数の動作オブジェクトは、例えば以下の４つに分類可能である。これらは、いずれも力制御を伴う動作である。
【００２６】
＜分類１：接触＞指定方向に移動して、反力を受けたら停止する動作である。
接触動作の分類は、接触オブジェクトを含む。図８Ａに示すように、接触オブジェクトでは、エンドエフェクター１４０で保持したワークＷＫａを指定方向ＤＤに移動させ、力検出器１３０で反力を検出した時にエンドエフェクター１４０を停止させる。なお、図８Ａに示したワークＷＫａ，ＷＫｂは、図１に示したワークＷＫ１，ＷＫ２とは無関係であり、動作の概要を説明するための仮想的なワークである。この点は、後述する図８Ｂ〜図８Ｄも同様である。
【００２７】
＜分類２：倣い＞指定軸の力が０になる状態を維持する動作である。
倣い動作の分類は、以下の３種類の動作オブジェクトを含む。
（ａ）脱力オブジェクト：指定軸の力が０になるように倣う動作である。
図８Ｂに示すように、脱力オブジェクトでは、指定軸の力が０になるように倣う動作が実行される。図８Ｂの例では、ワークＷＫａ，ＷＫｂ間のｚ軸方向の力が０でないときに−ｚ方向にエンドエフェクター１４０を戻すことにより、力検出器１３０で検出されるｚ軸方向の力を０にしている。
（ｂ）倣い移動オブジェクト：指定軸の力を０にするように倣いながら指定軌道を動く動作である。
（ｃ）面合わせオブジェクト：指定方向に角度を倣いながら押し付けて、面と面とを合わせる動作である。
【００２８】
＜分類３：探り＞指定方向の力が０となる位置を探る動作である。
探り動作の分類は、以下の２種類の動作オブジェクトを含む。
（ａ）押付け探りオブジェクト：押付ながら指定された軌跡で探って穴を見つける動作である。
図８Ｃに示すように、押付け探りオブジェクトでは、エンドエフェクター１４０で保持したワークＷＫａを指定方向に押付けながら、指定方向の力がゼロとなる位置を探り、穴Ｈｂの位置で停止させる。探りの軌跡としては、直線軌跡や螺旋軌跡などの複数の候補の中から１つの軌跡を選択することが可能である。
（ｂ）接触探りオブジェクト：接触動作を繰り返して穴を見つける動作である。
【００２９】
＜分類４：押付け＞指定方向に指定の力で押し付ける動作である。
押付け動作の分類は、以下の２種類の動作オブジェクトを含む。
（ａ）押付け（単純押付け）オブジェクト：指定方向に指定の力で押し付ける動作である。この動作では、他の指定軸については「倣う」動作を実行させることも可能である。
（ｂ）押付け移動オブジェクト：指定方向に指定の力で押し付けながら移動する動作である。この動作では、他の指定軸については「倣う」動作を実行させることも可能である。図８Ｄに示すように、押付け移動オブジェクトでは、指定方向ＤＤにエンドエフェクター１４０を移動させて指定の力で押付け、その後、指定の力での押付けを維持しながら（すなわち、倣いながら）指定方向と異なる方向に移動する。図８Ｄの例では、エンドエフェクター１４０で保持したワークＷＫａをワークＷＫｂの穴Ｈｂに挿入する動作が、押付け移動によって実行されている。
【００３０】
図６Ｄに示した動作オブジェクトＯＢ１〜ＯＢ４に関しては、動作の終了条件を定義するパラメーターと、動作の成否判定条件を定義するパラメーターとを設定可能である。例えば、接触オブジェクトＯＢ１に関しては以下のパラメーターを設定できる。
【００３１】
＜接触オブジェクトＯＢ１のパラメーター＞
（１）動作を定義する動作パラメーターの例
・接触方向：−Ｚ方向（接触方向は、作業パラメーターとして設定された嵌合方向から自動的に設定される。）
・接触予定距離：１０ｍｍ
・動作速度：５ｍｍ／ｓ
・接触時の力制御ゲイン：１．０
（２）終了条件の例
・目標力：５Ｎ（５Ｎを超えると動作を停止する）
（３）成否判定条件の例
・成否判定条件：タイムアウト時間＝１０秒（タイムアウト時間までに終了条件を満たした場合には動作が成功したものと判定し、終了条件を満たさなかった場合には動作が失敗したものと判定する。）
・失敗時動作：シーケンスを継続（動作が失敗したと判定された場合にどのように進めるかを指定する。シーケンスの継続又はシーケンスの終了を指定可能である。）
【００３２】
これらの例から理解できるように、本実施形態では、動作を定義するパラメーターと、動作の終了条件を定義するパラメーターと、動作の成否判定条件を定義するパラメーターとを設定可能なパラメーター設定領域ＰＲを表示可能なので、動作の終了や成功／失敗の判定を含む制御プログラムを容易に作成することが可能である。なお、動作の終了条件を定義するパラメーターと、動作の成否判定条件を定義するパラメーターとのうちの一方又は両方の設定が行えない形態としてもよい。
【００３３】
なお、動作パラメーターの終了条件又は成否判定条件は、力検出器１３０で測定される力の周波数に基づいて判定を実行する条件を含むように設定することも可能である。
【００３４】
図９は、力検出器１３０で測定される力Ｆの変化の一例を示している。この例では、動作開始から０．５秒後以降の期間ＰＰにおいて、力Ｆが振動している。このような振動は、周辺装置（例えばコンベアが動作していること）の影響である可能性がある。従って、ロボット１００の動作が周辺装置の影響を受けることを回避するために、制御装置２００が力Ｆの時間変化の周波数分析を実行して、予め指定した周波数のパワースペクトルが閾値以下又は閾値以上になることを検知したことを終了条件又は成否判定条件の一部として使用してもよい。図９の例では、期間ＰＰが経過した後、すなわち、予め指定した周波数のパワースペクトルが閾値以下になった後に、動作が終了する旨の判定、又は動作の成功又は失敗の判定を行うことができる。こうすれば、力検出器１３０で測定される力の周波数に基づいて判定する条件を使用するので、図９のように動作によって振動が発生する場合にも、動作の終了の有無の判定や、動作の成否の判定をより正しく行うことが可能である。
【００３５】
図６Ｄに示したように作業の動作フローが作成されると、この動作フローに従ってロボット１００に作業を実行させることが可能である。例えば、図６Ｄの実行指示領域ＲＮ内にある「実行」ボタンを教示者が押すと、変換部２４４（図４）が動作フローを制御プログラムに変換し、制御実行部２５０がその制御プログラムを実行することによってロボット１００に作業を実行させる。これは、制御プログラムの試行に相当する。
【００３６】
図１０Ａは、動作フローに従って作業を実行した結果を示す画面の一例を示している。
メインビュー領域ＭＶ内には、動作フローの実行時に力検出器１３０で検出された複数の力のうちから、Ｘ軸方向の力ＦｘとＸ軸回りのトルクＴｘの時間変化が表示されている。なお、メインビュー領域ＭＶには、力検出器１３０で検出された複数の力の中の任意の１つ以上の力の時間変化を選択して表示することが可能である。また、ＴＣＰの実測位置の時間変化や、ＴＣＰの目標位置と実測位置の偏差の時間変化をメインビュー領域ＭＶに表示することも可能である。メインビュー領域ＭＶ内の結果表示の期間は、動作フロー中の任意の１つの動作オブジェクトの動作期間とすることも可能であり、また、実行開始から停止までの全期間とすることも可能である。例えば、動作フロー作成領域ＦＬ内で任意の動作オブジェクトを選択すると、その動作オブジェクトの動作期間の実行結果が表示される。また、シーケンスブロックＳＢ１を選択すると、実行開始から停止までの全期間の結果が表示される。なお、メインビュー領域ＭＶ内の結果表示の期間は、複数の連続する動作オブジェクトに亘る動作期間としてもよい。結果領域ＲＳにも、制御プログラムの実行結果の一部の情報が表示される。例えば、任意の動作オブジェクトについて、動作の終了状態（成功又は失敗）や、動作に要した時間、動作終了時の力、及び、動作終了時の位置などを結果領域ＲＳ内に表示可能である。なお、メインビュー領域ＭＶには、図１０Ａに示したもの以外の種々の結果を表示できるようにしてもよい。例えば、ロボットの速度や各関節の角度などのロボットに関わる情報を表示してもよい。
【００３７】
ウィンドウＷ１は、更に、実行した結果のデータを所望の場所に保存するためのフィールドやボタンを有するように構成されていることが好ましい。実行結果のデータを保存できるようにすれば、後述する調整において、過去のデータと見比べることが可能となる。なお、データの保存先は、ロボット制御装置２００内でもよく、ロボット制御装置２００に接続されたコンピューターやクラウドでもよい。また、データ形式は、データベースでもよく、ファイル形式でもよい。
【００３８】
教示者は、制御プログラムの実行結果を観察し、必要に応じて個々のオブジェクトのパラメーターを調整することが可能である（図５のステップＳ１２０）。この調整は、動作フロー作成領域ＦＬ内のオブジェクトＯＢ１〜ＯＢ４の任意の１つを選択した状態において、パラメーター設定領域ＰＲに表示されるオブジェクトのパラメーターを変更することによって行うことができる。具体例として、例えば接触動作において接触したときの力が過度に大きな場合には、接触動作における速度を低下させるように接触オブジェクトのパラメーターが調整される。
【００３９】
図１０Ｂは、パラメーターの調整後に制御プログラムを再度実行した結果の例を示している。この例では、調整後の力Ｆnew，Ｔnewのピークが、調整前の力Ｆold，Ｔoldのピークに比べて小さくなっている。このように、このウィンドウＷ１では、動作フロー作成領域ＦＬ内で生成された動作フローのオブジェクトのパラメーターの調整と、その動作フロ―に従った作業の試行とを行うことができるので、適切に動作する動作フローを容易に作成できる。なお、図１０Ａで説明したように、過去の実行結果のデータを保存しておいた場合には、過去のデータを表示することも可能となる。
【００４０】
図１１は、力制御動作の問題点の対策案を提示する画面の一例を示す説明図である。この入力画面Ｗ１は、制御プログラムの実行後に、メインビュー領域ＭＶのトラブルシュートのタブを選択することによって表示される。この状態のメインビュー領域ＭＶを「対策案提示領域ＴＳ」と呼ぶ。対策案提示領域ＴＳには、動作フローを構成する複数の動作オブジェクトＯＢ１〜ＯＢ４の名称が動作フローに従って配列されており、実行結果で問題のあった動作オブジェクトについて、その問題点と対策案が表示される。動作オブジェクトに問題点が存在するか否かは、例えば、作業の試行においてその動作オブジェクトの終了条件や成否判定条件が満たされていたか否かに応じて判定することができる。なお、「問題点」とは、ロボットの動作が予め設定した所定の動作でないことを意味する。
【００４１】
対策案提示領域ＴＳには、動作フロー作成領域ＦＬにおいて教示者が選択した１つの動作オブジェクトのみを表示するようにしてもよい。また、メインビュー領域ＭＶのトラブルシュートのタブを選択した後に対策案を提示する代わりに、表示制御部２４２が制御プログラムの実行結果から問題点を自動的に検出し、検出した問題点に対する対策案を提示するようにしてもよい。「問題点に対する対策案」は、「予め設定した所定の動作を実現するための対策案」と呼ぶことも可能である。
【００４２】
図１２に拡大して示すように、この例では、対策案提示領域ＴＳ内に接触オブジェクトに関して以下の５つの項目について問題点があることが提示されている。
・「接触せずにタイムアウトする」
・「時間がかかる」
・「接触時の力が大きい」
・「動かしたい方向に動かない」
・「接触前に接触と誤判定する」
これらの５つの項目は、「予め設定した所定の動作では無いことを示す項目」に相当する。
【００４３】
また、図１２では、「接触せずにタイムアウトする」という問題点が教示者によって選択されており、その問題点に対する対策案として、「１．開始位置を確認する」、「２．動作のパラメーターを確認する」の対策案が提示されている。「２．動作のパラメーターを確認する」の対策案には、その動作のパラメーターを調整する画面に切り替えるためのボタンＢＴ２が表示されている。
【００４４】
図１３は、図１２のボタンＢＴ２を押した場合に表示される対策案提示領域ＴＳの例を示している。この対策案提示領域ＴＳは、目標値フィールドＴＦと、パラメーター設定値テーブルＰＴと、を含んでいる。また、問題点を解消するためのパラメーターの変更の方向を説明する説明文として、「目標力を大きくすると速度が速くなります」及び「力制御ゲインを小さくすると速度が速くなります」という文章が表示されている。
【００４５】
目標値フィールドＴＦは、その動作オブジェクトのパラメーターでは無いが、後述する第２特性値ＣＶ２を算出するために設定される目標値を入力するフィールドである。この例では、接触動作における目標移動距離が、目標値フィールドＴＦとして表示されている。
【００４６】
パラメーター設定値テーブルＰＴには、その動作オブジェクトのパラメーターの名称と、その現在設定値と、推奨設定値とが表示される。パラメーター設定値テーブルＰＴのパラメーターとしては、その動作オブジェクトの複数のパラメーターのうち、その動作オブジェクトの問題点に関連するパラメーターのみを提示することが好ましい。「問題点に関連するパラメーター」とは、そのパラメーターを調整することによって問題点を解消できる可能性のあるパラメーターを意味する。図１３の例では、接触オブジェクトの問題点に関連するパラメーターとして、「目標力」と「力制御ゲイン」と「タイムアウト時間」の３つが提示されている。パラメーター設定値テーブルＰＴに、その動作オブジェクトの問題点に関連するパラメーターのみを対策案として提示すれば、教示者がその動作オブジェクトの問題点を容易に解消できる。
【００４７】
パラメーター設定値テーブルＰＴには、更に、動作オブジェクトのパラメーターから予想される特性値も表示される。ここでは、パラメーターから予想される特性値として、「予想移動距離」と「予想移動速度」と「予想接触時間」の３つの特性値が例示されている。これらのうち、「予想移動距離」と「予想移動速度」は、接触オブジェクトのパラメーターのみから予想される特性値である。このように、動作オブジェクトのパラメーターのみから予想される特性値を「第１特性値ＣＶ１」と呼ぶ。なお、「第１特性値ＣＶ１」を、「パラメーターの推奨設定値から算出した第１特性値」とも呼ぶ。一方、「予想接触時間」は、接触オブジェクトのパラメーターと、目標値フィールドＴＦに入力される目標値（図１３の例では目標移動距離）とから予想される特性値である。このように、目標値フィールドＴＦに入力される目標値と動作オブジェクトのパラメーターの設定値から予想される特性値を「第２特性値ＣＶ２」と呼ぶ。なお、「第２特性値ＣＶ２」を、「目標値とパラメーターの推奨設定値から算出した第２特性値」とも呼ぶ。但し、図１３の例では、目標値フィールドＴＦに目標値が入力されていないので、第２特性値ＣＶ２である予想接触時間の値は表示されていない。
【００４８】
パラメーター設定値テーブルＰＴに表示されるパラメーターの推奨設定値は、その動作の問題点を解消できる可能性がある設定値である。この推奨設定値は、制御プログラムの実行結果に応じて、ロボット制御プログラム作成部２４０によって決定される。
【００４９】
対策案提示領域ＴＳには、推奨設定値を受け入れることを示すボタンＢＴ３と、新規設定値を入力する画面に切り換えるためのボタンＢＴ４とが含まれている。ボタンＢＴ３を押すと、推奨設定値が採用され、その後、実行指示領域ＲＮ（図６Ｄ）内の「実行」ボタンを教示者が押すと、推奨設定値を用いて動作フローが再度実行される。
【００５０】
図１４は、図１３において目標値フィールドＴＦに目標値が入力された後に表示される対策案提示領域ＴＳを示している。この例では、目標値フィールドＴＦに入力された目標値と動作オブジェクトの設定値とから決まる第２特性値ＣＶ２である予想接触時間の値が表示されている。なお、動作オブジェクトのパラメーターのみから決まる第１特性値ＣＶ１のうち、「予想移動距離」は、目標値フィールドＴＦに入力された目標値と重複するので表示されていないが、目標値と同じ値を表示してもよい。
【００５１】
このように、対策案提示領域ＴＳに第１特性値や第２特性値ＣＶ２を表示するようにすれば、教示者がこれらの特性値を見て力制御動作の問題点を容易に解消することが可能である。
【００５２】
図１５は、図１３において新規設定値を入力する画面に切り換えるためのボタンＢＴ４が押された後に表示される対策案提示領域ＴＳを示している。この例では、パラメーターの現在設定値と推奨設定値に加えて、パラメーターの新規設定値を入力する設定値フィールドＳＦが表示されている。この設定値フィールドＳＦの値は、教示者が任意に変更可能である。推奨設定値と新規設定値の下方には、その設定値を受け入れることを示すボタンＢＴ３ａ，ＢＴ３ｂが表示されている。教示者は、これらのボタンＢＴ３ａ，ＢＴ３ｂのいずれかを押すことによって、推奨設定値か新規設定値のいずれかを採用することが可能である。従って、教示者が適切な設定値を任意に設定して力制御動作の問題点を容易に解消することが可能である。なお、パラメーターの新規設定値を入力する設定値フィールドＳＦを表示する際に、パラメーターの現在設定値と推奨設定値を表示しないようにしてもよい。
【００５３】
なお、対策案提示領域ＴＳにおいてパラメーターの新規設定値を入力する代わりに、図１に示したパラメーター設定領域ＰＲにおいてパラメーターの新規設定値を入力するようにしてもよい。
【００５４】
図１６は、接触オブジェクトの「接触前に接触と誤判定する」という問題点に対する対策案を提示する対策案提示領域ＴＳの例を示している。ここでは、問題点を解消するためのパラメーターの変更の方向を説明する説明文として、「力制御ゲインを大きくする」及び「目標力を大きくする」という２つの文章が表示されている。このように、問題点を解消するためのパラメーターの変更の方向を説明する説明文として、１つ又は複数の説明文を対策案提示領域ＴＳに表示するようにすれば、教示者が問題点を解消する設定値をより容易に入力することが可能となる。
【００５５】
図１７は、パラメーターの設定値を複数回試行した後に表示される対策案提示領域ＴＳの例を示している。この例では、パラメーター設定値テーブルＰＴに、パラメーターの設定値の履歴が表示されている。具体的には、パラメーター設定値テーブルＰＴには、過去の設定値と、現在設定値と、推奨設定値と、新規設定値が表示されている。また、各設定値に対しては、設定値を受け入れることを示すボタンＢＴ３ａ〜ＢＴ３ｄが設けられている。従って、例えばボタンＢＴ３ｂを押せば、過去に使用した設定値を再選択することが可能である。過去の設定値は１つに限らず、複数の過去の設定値を履歴として表示してもよい。
【００５６】
図１７では、更に、過去の設定値と現在の設定値について、その設定値を用いた動作フローの実行結果を表示させるための結果表示ボタンＢＴ４ａ，ＢＴ４ｂが設けられている。これらの結果表示ボタンＢＴ４ａ，ＢＴ４ｂのいずれかを押すと、その設定値を用いた動作フローの実行結果が、前述した図１０Ａ又は図１０Ｂに示したように、メインビュー領域ＭＶに表示される。なお、このときに表示される実行結果としては、パラメーターの設定値の履歴に含まれる異なる設定値に対応する実行結果が識別可能な態様で表示されることが好ましい。こうすれば、教示者がパラメーターの設定値の履歴の中から、最もすぐれた実行結果を容易に選択できる。
【００５７】
このように、図５のステップＳ１２０では、様々な方法でパラメーター調整を行うことが可能である。
【００５８】
こうして動作フローが完成すると、図５のステップＳ１３０において、教示者の指示に応じて変換部２４４が動作フローを制御プログラムに変換する。この指示は、例えば、動作フロー作成領域ＦＬのコンテキストメニューから「制御プログラムの作成」を選択することによって行うことができる。なお、動作フローから制御プログラムへの変換と実行には、以下の３種類の方法いずれかを選択的に行えることが好ましい。
（１）動作フローを低級言語の制御プログラムに変換する。教示者は、変換された低級言語の制御プログラムを、自分で別個に記述した高級言語の制御プログラムから呼び出して実行する。この場合には、教示者が作業シーケンスを作成した後に、教示者が別個に記述する高級言語の制御プログラムの中で、例えば"FGRun シーケンス名"と記述することによって、そのシーケンスの制御プログラムが呼び出されて実行される。これは、最も基本的な実行方法である。
（２）動作フローを高級言語の制御プログラムに変換して、それを実行する。
（３）動作フローを低級言語の制御プログラムに変換して、それを直接実行する。
以下の説明では、主として上記（２）の方法で実行する場合を説明する。
【００５９】
図１８は、教示者の指示に応じて動作フローを制御プログラムに変換する際に表示される入力画面としてのウィンドウＷ３の一例を示している。このウィンドウＷ３は、制御プログラムに変換するシーケンス（すなわち動作フロー）を選択するシーケンス選択領域Ｆ３１と、制御プログラムのファイル名を設定するプログラムファイル名設定領域Ｆ３２とを含んでいる。なお、シーケンス選択領域Ｆ３１は省略してもよい。なお、ウィンドウＷ３は、パラメーターの保存先などの情報を指定する領域を有するように構成されていてもよい。ウィンドウＷ３において「実行」ボタンを押すと、変換部２４４によって動作フローが制御プログラムに変換され、その制御プログラムがメモリー２２０内に格納される。
【００６０】
図５のステップＳ１４０では、ステップＳ１３０で作成された制御プログラムに従って、ロボット制御装置２００がロボットを制御し、ロボットに作業を実行させる。この作業は、製造ラインでロボット１００の動作を確認する確認作業や、或いは、製造ラインで製品を製造するための本作業として実行可能である。
【００６１】
以上のように、第１実施形態では、表示制御部２４２は、制御実行部２５０によって動作フローの制御プログラムが実行された後に、ロボット１００の動作が予め設定した所定の動作でない場合に、予め設定した所定の動作を実現するための対策案を提示するので、その動作の問題点を解消して、正常に動作を実行させることが可能である。
【００６２】
また、第１実施形態では、動作フロー作成領域ＦＬに動作オブジェクトと条件分岐オブジェクトとをグラフィカルに配置することによって、条件分岐を含む動作フローを容易に作成できるので、作業中の動作が失敗したときにそのリカバリーや終了処理を簡単に教示することが可能である。また、その動作フローがロボットの制御プログラムに変換されるので、制御プログラムを容易に作成することが可能である。
【００６３】
B. 他の実施形態：
本発明は、上述した実施形態に限られるものではなく、その趣旨を逸脱しない範囲において種々の形態で実現することができる。例えば、本発明は、以下の形態（aspect）によっても実現可能である。以下に記載した各形態中の技術的特徴に対応する上記実施形態中の技術的特徴は、本発明の課題の一部又は全部を解決するために、あるいは、本発明の効果の一部又は全部を達成するために、適宜、差し替えや、組み合わせを行うことが可能である。また、その技術的特徴が本明細書中に必須なものとして説明されていなければ、適宜、削除することが可能である。
【００６４】
（１）本発明の第１の形態によれば、力検出器を備えるロボットの作業の制御プログラムを作成するロボット制御装置が提供される。このロボット制御装置は、力制御動作を含む作業の動作フローを作成するための動作フロー作成領域を含む入力画面を表示装置に表示させる表示制御部と；作成された動作フローを制御プログラムに変換する変換部と；前記制御プログラムを実行して前記ロボットを制御する制御実行部と；を備える。前記表示制御部は、前記制御実行部によって前記制御プログラムが実行された後に、前記ロボットの動作が予め設定した所定の動作でない場合に、前記予め設定した所定の動作を実現するための対策案を提示する画面を前記表示装置に表示させるように構成されている。
このロボット制御装置によれば、制御実行部によって制御プログラムが実行された後に、表示制御部が予め設定した所定の動作を実現するための対策案を提示するので、その動作を正常に実行することが可能であり、教示者が問題点の無い制御プログラムを容易に作成できる。
【００６５】
（２）上記ロボット制御装置において、前記表示制御部は、前記制御プログラムの実行結果から前記予め設定した所定の動作ではないことを示す項目を表示させ、前記画面を前記表示装置に表示させるように構成されていてもよい。
このロボット制御装置によれば、制御プログラムの実行結果から予め設定した所定の動作ではないことを示す項目を表示させので、その動作を正常に実行させることが可能であり、教示者が問題点の無い制御プログラムを容易に作成できる。
【００６６】
（３）上記ロボット制御装置において、前記対策案は、前記力制御動作を特定する複数のパラメーターのうち、前記項目に関連するパラメーターを含むように構成されていてもよい。
このロボット制御装置によれば、対策案は、力制御動作を特定する複数のパラメーターのうち、前記項目に関連するパラメーターを含むので、教示者が問題点の無い制御プログラムを容易に作成できる。
【００６７】
（４）上記ロボット制御装置であって、前記項目が表示された場合に、前記画面に前記パラメーターの現在設定値と推奨設定値とを表示させるように構成されていてもよい。
このロボット制御装置によれば、前記項目が表示された場合に、画面にパラメーターの現在設定値と推奨設定値とを表示させるので、教示者が問題点の無い制御プログラムを容易に作成できる。
【００６８】
（５）上記ロボット制御装置において、前記画面に、前記パラメーターの前記推奨設定値から算出した第１特性値を表示させるように構成されていてもよい。
このロボット制御装置によれば、パラメーターの推奨設定値から算出した第１特性値を表示するので、教示者がその第１特性値を見て問題点の無い制御プログラムを容易に作成できる。
【００６９】
（６）上記ロボット制御装置において、前記画面に、前記力制御動作の目標値を入力する目標値フィールドに前記目標値が入力されると、前記目標値と前記パラメーターの前記推奨設定値から算出した第２特性値を表示させるように構成されていてもよい。
このロボット制御装置によれば、パラメーターから決まらない力制御動作の目標値が入力されると、その目標値とパラメーターの推奨設定値から算出した第２特性値を表示するので、教示者がその第２特性値を見て問題点の無い制御プログラムを容易に作成できる。
【００７０】
（７）上記ロボット制御装置において、前記画面に、前記パラメーターの新規設定値を入力する設定値フィールドを表示させるように構成されていてもよい。
このロボット制御装置によれば、パラメーターの新規設定値を入力する設定値フィールドを表示させるので、教示者がその設定値フィールドに適切な設定値を任意に設定することによって、問題点の無い制御プログラムを容易に作成できる。
【００７１】
（８）上記ロボット制御装置において、前記表示制御部は、前記設定値フィールドに入力された前記新規設定値を用いて前記制御実行部によって前記制御プログラムが実行された後に、前記ロボットの動作が前記予め設定した所定の動作である場合、前記制御プログラムの実行結果を提示する画面を前記表示装置に表示させるように構成されていてもよい。
このロボット制御装置によれば、新規設定値を用いて制御プログラムが実行された後にその実行結果を提示する画面を表示するので、教示者がその動作の問題点が解消したか否かを容易に判断することが可能であり、教示者が問題点の無い制御プログラムを容易に作成できる。
【００７２】
（９）上記ロボット制御装置において、前記表示制御部は、前記パラメーターの設定値の履歴を表示させ、前記履歴から前記パラメーターの過去の設定値を選択可能な形態で前記画面を表示させるように構成されていてもよい。
このロボット制御装置によれば、パラメーターの設定値の履歴から過去の設定値を再度選択可能なので、教示者がその動作の問題点を容易に解消することが可能であり、教示者が問題点の無い制御プログラムを容易に作成できる。
【００７３】
（１０）本発明の第２の形態によれば、力検出器を備えるロボットの作業の制御プログラムを作成するロボット制御装置が提供される。このロボット制御装置は、プロセッサーを備え、前記プロセッサーは、（ａ）力制御動作を含む作業の動作フローを作成するための動作フロー作成領域を含む入力画面を表示装置に表示させ、（ｂ）作成された動作フローを制御プログラムに変換し、（ｃ）前記制御プログラムを実行して前記ロボットを制御する、ように構成されている。前記プロセッサーは、前記制御プログラムを実行した後に、前記ロボットの動作が予め設定した所定の動作でない場合に、前記予め設定した所定の動作を実現するための対策案を提示する画面を前記表示装置に表示させる。
このロボット制御装置によれば、制御プログラムが実行された後に、予め設定した所定の動作を実現するための対策案を提示するので、その動作を正常に実行させることが可能であり、教示者が問題点の無い制御プログラムを容易に作成できる。
【００７４】
本発明は、上記以外の種々の形態で実現することも可能である。例えば、ロボットとロボット制御装置とを備えたロボットシステム、ロボット制御装置の機能を実現するためのコンピュータープログラム、そのコンピュータープログラムを記録した一時的でない記録媒体（non-transitory storage medium）等の形態で実現することができる。
【符号の説明】
【００７５】
３０…カメラ、５０…搬送装置、５０ａ，５０ｂ…搬送ローラー、１００…ロボット、１１０…アーム、１２０…アームフランジ、１３０…力検出器、１４０…エンドエフェクター、２００…ロボット制御装置、２１０…プロセッサー、２２０…メモリー、２２２…プログラム命令、２２４…制御プログラム、２４０…ロボット制御プログラム作成部、２４２…表示制御部、２４４…変換部、２５０…制御実行部、２６０…表示装置、２７０…入力装置、４００…パーソナルコンピューター、５００…クラウドサービス
【図１】
2019188545.tif 000003
【図２】
2019188545.tif 000004
【図３】
2019188545.tif 000005
【図４】
2019188545.tif 000006
【図５】
2019188545.tif 000007
【図６Ａ】
2019188545.tif 000008
【図６Ｂ】
2019188545.tif 000009
【図６Ｃ】
2019188545.tif 000010
【図６Ｄ】
2019188545.tif 000011
【図７】
2019188545.tif 000012
【図８Ａ】
2019188545.tif 000013
【図８Ｂ】
2019188545.tif 000014
【図８Ｃ】
2019188545.tif 000015
【図８Ｄ】
2019188545.tif 000016
【図９】
2019188545.tif 000017
【図１０Ａ】
2019188545.tif 000018
【図１０Ｂ】
2019188545.tif 000019
【図１１】
2019188545.tif 000020
【図１２】
2019188545.tif 000021
【図１３】
2019188545.tif 000022
【図１４】
2019188545.tif 000023
【図１５】
2019188545.tif 000024
【図１６】
2019188545.tif 000025
【図１７】
2019188545.tif 000026
【図１８】
2019188545.tif 000027