(57)【要約】【課題】簡易にロボットの作業内容を設定すること。【解決手段】作業変更装置は、ロボットが実行する作業プログラムを変更する。作業変更装置は、ロボットが実行する複数の作業情報と、作業情報に関連付けられた下位の作業情報と、でツリー状に構成される複数階層からなる作業プログラムを記憶する記憶手段と、記憶手段に記憶された作業プログラムの階層毎に関連付けて作業情報を表示手段の表示画面上に設定可能に表示させる表示制御手段と、表示手段の表示画面上で設定された一連の作業情報に基づいて、ロボットの作業プログラムを変更する変更手段と、を備える。【選択図】図２
2014210332.tif 000002
【特許請求の範囲】
【請求項１】
ロボットが実行する作業プログラムを変更する作業変更装置であって、
前記ロボットが実行する複数の作業情報と、該作業情報に関連付けられた下位の作業情報と、でツリー状に構成される複数階層からなる作業プログラムを記憶する記憶手段と、
前記記憶手段に記憶された作業プログラムの階層毎に関連付けて前記作業情報を表示手段の表示画面上に設定可能に表示させる表示制御手段と、
前記表示手段の表示画面上で設定された一連の作業情報に基づいて、前記ロボットの作業プログラムを変更する変更手段と、
を備える、ことを特徴とする作業変更装置。
【請求項２】
請求項１記載の作業変更装置であって、
前記記憶手段に記憶された作業プログラムは、前記ロボットの作業内容を示す同一階層の相互に関連する複数の作業方法を含む
前記作業情報を複数の階層で構成してなる、ことを特徴とする作業変更装置。
【請求項３】
請求項２記載の作業変更装置であって、
前記表示制御手段は、前記作業情報と、該作業情報に含まれる前記作業方法と、を前記表示手段の表示画面上に並んで選択可能に表示させる、ことを特徴とする作業変更装置。
【請求項４】
請求項２又は３記載の作業変更装置であって、
前記表示手段は、前記作業情報と、表示を上方及び下方へ遷移させる遷移ボタンと、を表示画面に表示させ、
前記表示制御手段は、前記上方の遷移ボタンが選択されると、前記作業プログラムにおいて、前記表示手段の表示画面に表示されている作業情報よりも上位階層の作業情報を前記表示手段の表示画面に表示させ、前記下方の遷移ボタンが選択されると、前記作業プログラムにおいて、前記表示手段の表示画面に表示されている作業情報よりも下位階層の作業情報を前記表示手段の表示画面に表示させる、ことを特徴とする作業変更装置。
【請求項５】
請求項２乃至４のうちいずれか１項記載の作業変更装置であって、
前記表示手段の表示画面上に表示された作業方法に対して所定操作を行うと、前記表示制御手段は、前記作業情報の変数を変更するための変更メニューを前記表示手段の表示画面に表示させる、ことを特徴とする作業変更装置。
【請求項６】
請求項５記載の作業変更装置であって、
前記表示制御手段は、前記表示手段の表示画面において変更された前記作業方法及び／又は変数を前記記憶手段に記憶するか否かを選択させるための記憶メニューを前記表示手段の表示画面に表示させる、ことを特徴とする作業変更装置。
【請求項７】
請求項１乃至６のうちいずれか１項記載の作業変更装置であって、
前記表示手段の表示画面上に表示された前記作業情報に対して所定操作を行うと、前記表示制御手段は、前記作業情報に関連付けられたアイコンを編集するための編集メニューを前記表示手段の表示画面に表示させる、ことを特徴とする作業変更装置。
【請求項８】
請求項７記載の作業変更装置であって、
前記編集メニューは、前記作業情報に関連付けられたアイコンの複製、並べ替え、名前変更、削除のうち少なくとも１つを含む、ことを特徴とする作業変更装置。
【請求項９】
請求項１乃至８のうちいずれか１項記載の作業変更装置であって、
前記表示制御手段は、前記ロボットの作業不能状態であると判断したとき、該作業不能状態を知らせるメッセージ情報を表示させつつ、前記作業プログラムの階層毎に関連付けて前記作業情報を表示手段の表示画面上に設定可能に表示させる、ことを特徴とする作業変更装置。
【請求項１０】
ロボットが実行する作業プログラムを変更する作業変更方法であって、
前記ロボットが実行する複数の作業情報と、該作業情報に関連付けられた下位の作業情報と、でツリー状に構成される複数階層からなる作業プログラムを記憶するステップと、
前記作業プログラムの階層毎に関連付けて前記作業情報を表示画面上に設定可能に表示させるステップと、
前記表示画面上で設定された一連の作業情報に基づいて、前記ロボットの作業プログラムを変更するステップと、
を含む、ことを特徴とする作業変更方法。
【請求項１１】
ロボットが実行する複数の作業情報と、該作業情報に関連付けられた下位の作業情報と、でツリー状に構成される複数階層からなる作業プログラムの階層毎に関連付けて前記作業情報を表示画面上に設定可能に表示させる処理と、
前記表示画面上で設定された一連の作業情報に基づいて、前記ロボットの作業プログラムを変更する処理と、
をコンピュータに実行させる、ことを特徴とする作業変更プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットの実行する作業内容を変更するための作業変更装置、作業変更方法、及び作業変更プログラムに関するものである。
【背景技術】
【０００２】
ロボットの作業ティーチングを行う際、例えば、予め用意されている所定ユニット操作（動作プログラム）をティーチングパネル上にアイコンとして表示する。そして、ユーザがアイコンを選択して確定させることでロボットにその操作プログラムが登録され、その操作プログラムに従ってロボットが動作可能となる技術が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−１８２２３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、例えば、生活支援として使用されるロボットなどでは、その使用環境は一律ではなく、また頻繁に変化し得るため予め設定された作業を実行してもその動作途中で障害物との干渉などで、動作続行が不能となる可能性がある。なお、ティーチングパネルなどにロボットの動作変更指示を行うことで上記回避が可能となり得る。しかしながら、所定作業プログラムなどをいくつか用意しておいても、個々の繋がりがないので、ロボットに対する回避動作教示が必ずしも成立せず、たとえ、成立したときも、その設定が困難となり得る。なお、ロボット自身がカメラ画像などで周辺認識を行い回避することもできるが条件が限られる。
【０００５】
本発明は、このような問題点を解決するためになされたものであり、簡易にロボットの作業内容を変更できる作業変更装置、作業変更方法、及び作業変更プログラムを提供することを主たる目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するための本発明の一態様は、ロボットが実行する作業プログラムを変更する作業変更装置であって、前記ロボットが実行する複数の作業情報と、該作業情報に関連付けられた下位の作業情報と、でツリー状に構成される複数階層からなる作業プログラムを記憶する記憶手段と、前記記憶手段に記憶された作業プログラムの階層毎に関連付けて前記作業情報を表示手段の表示画面上に設定可能に表示させる表示制御手段と、
前記表示手段の表示画面上で設定された一連の作業情報に基づいて、前記ロボットの作業プログラムを変更する変更手段と、を備える、ことを特徴とする作業変更装置である。
この一態様において、前記記憶手段に記憶された作業プログラムは、前記ロボットの作業内容を示す同一階層の相互に関連する複数の作業方法を含む前記作業情報を複数の階層で構成してなっていてもよい。
この一態様において、前記表示制御手段は、前記作業情報と、該作業情報に含まれる前記作業方法と、を前記表示手段の表示画面上に並んで選択可能に表示させてもよい。
この一態様において、前記表示手段は、前記作業情報と、表示を上方及び下方へ遷移させる遷移ボタンと、を表示画面に表示させ、前記表示制御手段は、前記上方の遷移ボタンが選択されると、前記作業プログラムにおいて、前記表示手段の表示画面に表示されている作業情報よりも上位階層の作業情報を前記表示手段の表示画面に表示させ、前記下方の遷移ボタンが選択されると、前記作業プログラムにおいて、前記表示手段の表示画面に表示されている作業情報よりも下位階層の作業情報を前記表示手段の表示画面に表示させてもよい。
この一態様において、前記表示手段の表示画面上に表示された作業方法に対して所定操作を行うと、前記表示制御手段は、前記作業情報の変数を変更するための変更メニューを前記表示手段の表示画面に表示させてもよい。
この一態様において、前記表示制御手段は、前記表示手段の表示画面において変更された前記作業方法及び／又は変数を前記記憶手段に記憶するか否かを選択させるための記憶メニューを前記表示手段の表示画面に表示させてもよい。
この一態様において、前記表示手段の表示画面上に表示された前記作業情報に対して所定操作を行うと、前記表示制御手段は、前記作業情報に関連付けられたアイコンを編集するための編集メニューを前記表示手段の表示画面に表示させてもよい。
この一態様において、前記編集メニューは、前記作業情報に関連付けられたアイコンの複製、並べ替え、名前変更、削除のうち少なくとも１つを含んでいても良い。
この一態様において、前記表示制御手段は、前記ロボットの作業不能状態であると判断したとき、該作業不能状態を知らせるメッセージ情報を表示させつつ、前記作業プログラムの階層毎に関連付けて前記作業情報を表示手段の表示画面上に設定可能に表示させてもよい。
上記目的を達成するための本発明の一態様は、ロボットが実行する作業プログラムを変更する作業変更方法であって、前記ロボットが実行する複数の作業情報と、該作業情報に関連付けられた下位の作業情報と、でツリー状に構成される複数階層からなる作業プログラムを記憶するステップと、前記作業プログラムの階層毎に関連付けて前記作業情報を表示画面上に設定可能に表示させるステップと、前記表示画面上で設定された一連の作業情報に基づいて、前記ロボットの作業プログラムを変更するステップと、を含む、ことを特徴とする作業変更方法であってもよい。
上記目的を達成するための本発明の一態様は、ロボットが実行する複数の作業情報と、該作業情報に関連付けられた下位の作業情報と、でツリー状に構成される複数階層からなる作業プログラムの階層毎に関連付けて前記作業情報を表示画面上に設定可能に表示させる処理と、前記表示画面上で設定された一連の作業情報に基づいて、前記ロボットの作業プログラムを変更する処理と、をコンピュータに実行させる、ことを特徴とする作業変更プログラムであってもよい。
【発明の効果】
【０００７】
本発明によれば、簡易にロボットの作業内容を変更できる作業変更装置、作業変更方法、及び作業変更プログラムを提供することができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の一実施の形態にかかる作業ロボットの一例を示す図である。
【図２】本発明の一実施の形態に係る作業変更装置の概略的なシステム構成を示すブロック図である。
【図３】作業の構成を示す図である。
【図４】作業方法及び作業変数の関係を示す図である。
【図５】作業プログラムの概略的な構成を示す図である。
【図６】作業枝の一例を示す図である。
【図７Ａ】作業「取ってくる」に関する作業プログラムの一具体例を示す図である。
【図７Ｂ】作業「取ってくる」に関する作業プログラムの一具体例を示す図である。
【図８】上位階層と下位階層との関係を示す図である。
【図９】図８における作業枝の一例を示す図である。
【図１０】作業の開始において表示部に表示される表示画面の一例を示す図である。
【図１１】表示部の表示画面における表示の構成を示す図である。
【図１２】表示部の表示画面の作業状態ダイアログを説明する図である。
【図１３】作業継続不能時における作業変更方法を説明する図である。
【図１４】作業継続不能時における作業変更方法を説明する図である。
【図１５】作業継続不能時における作業変更方法を説明する図である。
【図１６】作業継続不能時における作業変更方法を説明する図である。
【図１７】作業継続不能時における変更操作を記憶させる表示画面を示す図である。
【図１８】作業方法、作業変数を複製、並べ替え、名前変更、削除する方法を示す図である。
【図１９】本発明の一実施の形態に係る作業ロボットによる作業プログラムの実行フローを示すフローチャートである。
【図２０】作業ロボットの作業継続不能時の処理フローを示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、図面を参照して本発明の実施の形態について説明する。本発明の一実施の形態に係る作業変更装置は、例えば、図１に示すような作業ロボット１の実行する作業内容を変更する装置である。
【００１０】
作業ロボット１は、任意の場所に移動し、例えば、物を拾う、物を取ってくる、床の片付け、窓開け、などの人が行う任意の作業を実行可能に構成された自律型ロボットである。作業ロボット１は、ロボット本体２と、ロボット本体２に設けられ車輪など駆動させることでロボット本体２を移動させる移動台車３と、ロボット本体２に連結された多関節型のアーム４と、周辺環境を撮影するカメラ５と、を備えている。多関節型のアーム４の先端部には、物体などを把持できるグリッパ（把持部）６が取り付けられている。作業ロボット１は、カメラ５により撮影された周辺環境の撮影画像に基づいて、例えば、障害物などを回避しつつ、設定された所望位置に移動することができる。また、作業ロボット１は、アーム４及びグリッパ６を駆動することで、物体を把持し移動させるなどの作業を行うことができる。なお、上述した作業ロボット１の構成は一例であり、これに限らず、任意の自律型ロボットに適用できる。
【００１１】
作業変更装置１０は、作業ロボット１と別体として構成され、作業ロボット１と無線あるいは有線で接続されているが、例えば、作業ロボット１に一体的にあるいは取付け取外し可能に設けられていても良い。作業変更装置１０は、作業ロボット１が作業を行うための作業プログラムを、作業ロボット１に対して送信する。作業ロボット１は、作業変更装置１０から送信される作業プログラムに従って作業を実行する。
【００１２】
図２は、本実施の形態に係る作業変更装置の概略的なシステム構成を示すブロック図である。本実施の形態に係る作業変更装置１０は、各種のデータ、プログラムなどを記憶する記憶部１１と、ユーザが選択するメニューなどを表示する表示部１２と、表示部１２の表示を制御する表示制御部１３と、表示部１２の表示画面上で設定された情報に基づいて、作業ロボット１の作業内容を変更する作業変更部１４と、を備えている。
【００１３】
なお、作業変更装置１０は、例えば、演算処理、制御処理等と行うＣＰＵ（Central Processing Unit）、ＣＰＵによって実行される演算プログラム、制御プログラム等が記憶されたＲＯＭ（Read Only Memory）やＲＡＭ（Random Access Memory）からなるメモリ、外部と信号の入出力を行うインターフェイス部（Ｉ／Ｆ）、などからなるマイクロコンピュータを中心にして、ハードウェア構成されている。ＣＰＵ、メモリ、及びインターフェイス部は、データバスなどを介して相互に接続されている。
【００１４】
記憶部１１は、記憶手段の一具体例であり、例えば、上記メモリにより構成されている。記憶部１１は、作業ロボット１が実行する複数の作業（作業情報）と、その作業に関連する下位の作業と、でツリー状に構成される複数階層からなる作業プログラムを記憶している。
【００１５】
ここで、作業とは、例えば、作業ロボット１が実行する物理的あるいは論理的な処理単位である。作業は、１つ以上の作業方法（方法１、・・・、方法ａ）の選択肢、および、作業が正常に終了したか否かを判定するための終了条件の判定関数（終了条件判定関数）、を少なくとも含む（図３）。また、各作業方法によらず共通に作業の振る舞いに影響を与える変数（変数１、・・・、変数ｂ）を含んでいても良い。
【００１６】
作業方法は、作業を終了条件に導くための処理であり、通常、その処理に対して影響を与える変数が関連付けられている（図４）。
【００１７】
作業プログラムは、１つの作業を詳細な作業ステップへ展開して表現したものである。作業プログラムは、作業をその下位の細かい作業列へ分解したものである（図５）。作業プログラムは、上位の作業をその下位の複数の作業へ再帰的に展開して定義することで、ツリー構造で階層的に表現できる。細かい作業ステップへの展開は選択された作業方法によって異なり、作業を選ぶだけで一意に決定されるわけではない。
【００１８】
例えば、図５に示す階層データにおいて、最上位の作業１０１から、その下位の作業１０２、作業１０３、および作業１０４、を経て特定の作業１０５まで展開した場合、図６に示すような作業枝（作業の連鎖、作業の列）で作業内容を表現できる。図７Ａ及びＢは、作業「取ってくる」に関する作業プログラムの一例を示す図である。なお、図７Ａ及びＢにおいて、「↓」は作業ステップ（作業）を示し、「Ｐ」は変数を示し、「ι」は現在選択されている作業方法を示している。
【００１９】
例えば、図７Ａ及びＢにおいて、作業「取ってくる」の下位階層には、作業「物を指定」、「取りに行く」、「見回す」、「物を認識」、「物を把持」、「戻ってくる」、および「物を手渡す」が展開される（図８）。この階層の中で作業「取りに行く」の下位階層には、作業「目的地設定」、「経路計画」、「移動実行」が展開される。作業「物を把持」の下位階層には、作業「把持位置姿勢決め」、「動作計画」、「把持動作実行」が展開される。さらに、作業「物を手渡す」の下位階層には、作業「渡す姿勢の決定」、「動作計画」、「渡す動作実行」が展開され、この階層で作業「渡す姿勢の決定」の下位階層には、作業「手の位置の認識」、「差し出し位置の決定」が展開される。このように、下位階層に展開するに従って、作業が徐々により具体化する。
【００２０】
例えば、図８において、作業「取ってくる」から「把持動作実行」までの作業枝は、図９に示す如く、「取ってくる」、「物を把持」、「把持動作実行」となる。
【００２１】
表示部１２は、表示画面上において、ユーザが選択する作業情報を表示する。表示部１２は、例えば、液晶ディスプレイ装置、有機ＥＬディスプレイ装置などにより構成されている。表示部１２は、例えば、タッチパネル式となっており、ユーザが表示画面に表示された選択情報（アイコンなど）を触れる（タップ操作、フリック操作などを行う）ことで、対応する選択情報が入力されるように構成されている。また、表示部１２には、ジョイスティック及びキーが設けられており、このジョイスティック及びキーを操作することでも、表示画面上のメニューなどの選択情報を選択入力できるように構成されている。さらに、マウスなどの任意の入力機器を接続して表示部１２の表示画面上の選択情報を選択入力してもよい。
【００２２】
表示制御部１３は、表示制御手段の一具体例であり、表示部１２の表示画面上で入力された選択情報と、記憶部１１に記憶された作業プログラムと、に基づいて、表示部１２における表示画面の表示内容を制御する。
【００２３】
作業変更部１４は、変更手段の一具体例であり、表示部１２の表示画面上で設定された一連の作業情報に基づいて、作業ロボット１の作業プログラムを変更し、記憶部に記憶させる。また、作業変更部１４は、例えば、変更した作業プログラムを作業ロボット１に送信する。作業ロボット１は、作業変更部１４から送信される作業プログラムに従って作業を実行する。
【００２４】
ところで、例えば、生活支援に使用される作業ロボットなどにおいては、その使用環境は一律ではなく、また頻繁に変化し得るため予め設定された作業を実行してもその動作途中で障害物との干渉などで、作業継続不能となる可能性がある。この場合、現在の作業ロボットの作業プログラムを変更する必要が生じる。
【００２５】
本実施の形態に係る作業変更装置１０によれば、後述の如く、ユーザが表示部１２の表示画面２００に従って作業の設定を行うことで、その作業プログラムを簡易に変更することができる。次に、本実施の形態に係る作業変更装置１０による作業プログラムの変更方法について具体例を挙げて詳細に説明する。
【００２６】
図１０は、作業の開始において表示部に表示される表示画面の一例を示す図である。例えば、ユーザが表示画面２００上の「作業」を選択し表示部１２のタッチパネルからタップ操作により入力すると、表示制御部１３は、作業リスト（作業「拾う」、「取ってくる」、「床片付け」、「窓開け」）を表示部１２の表示画面２００上に表示させる。ユーザが作業リスト中の作業の１つ（例えば、「取ってくる」）をタップ操作で選択すると、作業ロボット１はその作業を開始する。
【００２７】
図１１は、作業ロボット１が実行していた作業が何らかの理由で作業継続不能となり、一時停止した場合の表示画面の一例を示す図であり、作業「取ってくる」の中で実行する作業「把持動作実行」が完了できなかった場合の例を示している。表示制御部１３は、記憶部１１に記憶された作業プログラムの階層毎に作業を表示部１２の表示画面２００上に選択可能に表示させる。作業が継続不能となった場合、例えば、表示制御部１３は、図１１に示す如く、表示画面２００の上方に実行中の作業を含む作業状態ダイアログ２０１、その下方にメッセージ情報２０２を表示させる。表示制御部１３は、例えば、作業状態ダイアログ２０１の上段表示領域２０３に実行中の作業に至るまでの同一階層にある作業ステップ（「把持位置姿勢決め」、「動作計画」、「把持動作実行」）を表示させ、下段表示領域２０４に実行中の作業に関連付けられた作業方法（「自動速度調整」、「手動速度調整」など）を表示させる。
【００２８】
ユーザが、表示部１２の表示画面２００の作業状態ダイアログ２０１において上方の遷移ボタン２０５を選択（タップ操作など）すると、表示制御部１３は、表示画面２００の上段表示領域２０３及び下段表示領域２０４に、現在表示されている作業を作業枝（図９）に沿ってより上位階層の作業に変更して表示させる（図１６）。一方、ユーザが、表示部１２の表示画面２００の作業状態ダイアログ２０１において、下方の遷移ボタン２０６を選択すると、表示制御部１３は、表示画面２００の上段表示領域２０３及び下段表示領域２０４に、現在表示されている作業を作業枝（図９）に沿ってより下位階層の作業に変更して表示させる。表示制御部１３は、現在選択（実行）されている作業及び作業方法（例えば、「把持動作実行」、「自動速度調整」）を表示画面２００上で、強調線表示、高輝度表示、点滅表示などの強調表示を行う（図１２）。
【００２９】
表示制御部１３は、表示部１２の表示画面２００において、上段表示領域２０３及び下段表示領域２０４の下方に、選択された作業に関するメッセージ情報２０２を表示させる。例えば、表示制御部１３は、表示部２００の表示画面２００で作業「把持動作実行」が選択され、把持動作実行の結果、その把持作業が完了できなかった（作業継続不能）場合、「作業を完了できませんでした。再試行するには作業方法を選択してください」とメッセージ情報２０２を表示させる。
【００３０】
このような、作業継続不能時に、ユーザは、表示部１２の表示画面２００の下段表示領域２０４に表示された作業方法「自動速度調整」から「手動速度調整」に変更（タップ操作）し作業を再開できる（図１３）。
【００３１】
あるいはまた、ユーザが、表示部１２の表示画面２００の上段表示領域２０３に表示された作業「把持動作実行」をフリック操作（下方へフリックなど）すると、表示制御部１３は、表示部１２の表示画面２００に更にその作業に関連付けられた変数２０７（「把持位置姿勢」、「アーム軌道」）を表示させる（図１４）。ユーザが、表示画面２００の変数２０７（例えば、「把持位置姿勢」）をタップ操作すると、表示制御部１３は表示部１２の表示画面２００にその変数を変更するための変更メニューを表示させる。これによりユーザは作業の変数を変更できる。
【００３２】
あるいは、作業ロボット１の作業継続不能時に、例えば、ユーザは、表示部１２の表示画面２００の下段表示領域２０４において、作業方法「手動速度調整」を選択（フリック操作など）する（図１５）。表示制御部１３は、作業方法「手動速度調整」が選択されると、表示画面２００にさらにこの作業方法「手動速度調整」に関連付けられた変数リスト２０７（「速度ゲイン」など）を表示させる。さらに、ユーザが表示部１２の表示画面２００で変数「速度ゲイン」を選択（「速度ゲイン」アイコンをタップ操作）すると、表示制御部１３は、表示画面２００にさらにその「速度ゲイン」を変更させる変更ダイアログを表示させる。さらにユーザがこの作業方法を選択（タップ操作）すると、異なる作業方法で作業が再開される。これにより、作業ロボット１の作業プログラムを簡易に変更でき、作業継続が可能となる。
【００３３】
また、作業ロボット１の作業継続不能時に、例えば、ユーザは、表示部１２の表示画面２００において、上方の遷移ボタン２０５を選択すると、表示制御部１３は、表示部１２の表示画面２００の上段表示領域２０３及び下段表示領域２０４に、現在の階層の作業（把持位置姿勢決め、動作計画、把持動作実行）及び実行中の作業の作業方法（自動速度調整、手動速度調整）より上位階層の作業（取りに行く、見回す、物を認識、物を把持）及び実行中の作業の作業方法（自動把持、手動でアーム操作）を表示させる（図１６）。ここで、ユーザは、表示部１２の表示画面２００上の下段表示領域２０４において、作業方法を選択（アイコンをタップ操作）することで作業方法「手動でアーム操作」に変更することができる。これにより、作業ロボット１の作業プログラムを簡易に変更でき作業継続が可能となる。
【００３４】
上述したように、本実施の形態においては、作業ロボット１が作業継続不能となったときに、不能となった作業を継続可能な状態にするために、作業ロボット１の作業は一時停止する。このとき、表示制御部１３は、ユーザの選択操作に応じて、作業プログラム上において、現在の表示されている階層の別の作業方法の選択メニュー、変数を変更するための変更メニュー、あるいは、別の階層の作業、作業方法および変数、を表示部１２の表示画面２００に表示させる。
【００３５】
これに対し、ユーザは、別の作業方法を選択メニューから選択し、必要に応じて変数を変更し、あるいは、同一の作業方法を選択しつつ変数のみを変更し、作業指示を行う（作業アイコンをタップ操作する）。これにより、作業ロボット１の作業プログラムを簡易かつ適切に変更でき、作業再開できる。なお、ユーザは、作業プログラム上で上位階層の別の作業方法がよいと考える場合は、表示部１２の表示画面２００上において上位階層に遷移させてその階層の作業方法を選択して作業を再開させてもよい。
【００３６】
これにより、複数の作業を含む作業プログラムの中から、そのときの作業ロボット１の状況に最適な情報に限定してユーザに提示でき、ユーザはその情報に基づいて直感的かつ容易に作業ロボット１に対する作業プログラムを設定できる。また、作業方法として、各個操作（軸ごとのマニュアル操作）以外に作業により適した選択肢を用意することで、各個操作のみで動作させる通常の作業変更装置と比較して、作業時間を大幅に低減できる。
【００３７】
なお、作業ロボット１の作業継続不能時に、ユーザが上述のような変更操作を行い作業が完了すると、表示制御部１３は、例えば、表示部１２の表示画面２００上において、その変更設定情報（変更された作業方法及び変数）を記憶部１１に記憶させるための記憶メニュー２０８（「上書き」、「作業のコピーを作成」、「保存しない」）を表示させる（図１７）。さらに、表示制御部１３は、表示部１２の表示画面２００上において、メッセージ情報２０２として、「作業を完了しました。作業途中の変更情報を保存しますか？」を表示させる。これに対して、例えば、ユーザが、表示部１２の表示画面２００の「上書き」、あるいは「作業のコピーを作成」を選択すると、作業変更部１４は上述した変更設定情報に基づいて作業プログラムを変更し記憶部１１に記憶させる。
【００３８】
上述したように、作業ロボット１の作業継続不能時に、ユーザが作業方法の選択や変数の設定を変更した設定内容を、元の作業プラグラムに「上書き」あるいは、その作業プログラムのコピーを記録する（経験の蓄積）ように、ユーザに問い合わせる。これにより、その変更した設定内容の記録をユーザに対して促す。これに対し、ユーザが、自ずと、変更した設定内容を記録させる。したがって、ユーザは、その変更した設定内容の記録を利用することができ、次回、同一状況で同一作業を実行する場合に、同様の作業継続不能になり同様の設定を再度行うというような煩雑な事態を防止できる。
【００３９】
さらに、表示部１２の表示画面２００の下段表示領域２０４において、ユーザが例えば「自動把持」を長押しすると、表示制御部１３は、表示部１２の表示画面２００に編集メニュー２０９（「複製」、「並べ替え」、「名前変更」、「削除」）を表示させる（図１８）。さらに、ユーザが表示画面１２の編集メニュー２０９で、例えば、「複製」を選択（タップ操作）すると、表示制御部１３は表示部１２の表示画面２００の下段表示領域２０４において「自動把持の複製」を追加して表示させる。このようにして、作業方法を簡易に複製、並べ替え、名前変更、削除することができる。
【００４０】
例えば、作業方法のアイコンに対する編集メニュー２０９を表示させる。そして、編集メニュー２０９の中から複製ボタンを選択し、作業方法の複製のアイコンを生成する。さらに、この複製した作業方法のアイコンに対して、上述したような作業変数の変更操作による作業プログラムの修正を行う。そして、ユーザがその複製された作業方法のアイコンへの実行指示を行うと、その修正後の作業プログラムが実行される。これにより、類似の作業プログラムの作成、実行が容易となる。したがって、部分的に設定変更した類似の作業プログラムを予め用意でき、状況に応じてユーザが選択することで、同様の作業継続不能でユーザが最初から指示し直すというような事態を防止することができる。
【００４１】
ここで、本実施の形態に係る作業ロボットによる作業プログラムの実行フローについて説明する。図１９は、本実施の形態に係る作業ロボットによる作業プログラムの実行フローを示すフローチャートである。
【００４２】
作業ロボット１は、現在設定されている作業ステップを消去し（ステップＳ１０１）、次の作業ステップが存在するか否かを判断する（ステップＳ１０２）。
【００４３】
作業ロボット１は、次の作業ステップが存在しないと判断したとき（ステップＳ１０２のＮＯ）、作業実行を終了する。一方、作業ロボット１は、次の作業ステップが存在すると判断したとき（ステップＳ１０２のＹＥＳ）、次の作業ステップを現在の作業ステップとして設定する（ステップＳ１０３）。
【００４４】
作業ロボット１は、設定した現在の作業ステップを実行する（ステップＳ１０４）。
【００４５】
作業ロボット１は、現在の作業プログラムの終了判定関数の戻り値がＴＲＵＥ（終了判定）であるか否かを判定する（ステップＳ１０５）。作業ロボット１は、終了判定関数の戻り値がＴＲＵＥであると判定したとき（ステップＳ１０５のＹＥＳ）、上記（ステップＳ１０２）の処理に戻る。一方、作業ロボット１は、終了判定関数の戻り値がＴＲＵＥでないと判定したとき（ステップＳ１０５のＮＯ）、後述の作業継続不能時の処理に移行する。
【００４６】
次に、作業ロボット１の作業継続不能時の処理フローについて、詳細に説明する。図２０は、作業ロボットの作業継続不能時の処理フローを示すフローチャートである。
【００４７】
作業ロボット１の作業継続が不能状態のとき、表示部１２は表示画面２００上に現在の作業ステップを含むその同一階層の作業情報を表示させる（ステップＳ２０１）。
【００４８】
表示部１２の表示画面２００上において、作業方法（方法アイコン）が選択されると（ステップＳ２０２のＹＥＳ）、作業変更部１４は、その選択された作業方法の属する作業を現在の作業ステップに設定し、選択された作業方法をその作業ステップの作業方法に設定する（ステップＳ２０３）。その後、現在の作業ステップを実行する処理（ステップＳ１０４）へ戻る。
【００４９】
表示部１２の表示画面２００上において、変数（変数アイコン）が選択されると（ステップＳ２０２のＹＥＳ）、表示制御部１３はその作業変数の変更メニューを表示部１２の表示画面２００上に表示させる。作業変更部１４は、表示部１２の表示画面２００の変更メニューにおける変更に従ってその作業の変数を設定する（ステップＳ２０４）。
【００５０】
表示部１２の表示画面２００上において、作業（作業アイコン）が選択されると（ステップＳ２０２）、作業変更部１４は、選択された作業を現在の作業ステップに設定し、その作業情報を表示させる（ステップＳ２０５）。
【００５１】
表示部１２の表示画面２００上において、上方の遷移ボタン２０５が選択されると（ステップＳ２０２）、表示制御部１３は、作業枝上において現在表示されている階層に対して上位階層が存在する場合、表示部１２の表示画面２００の上段表示領域２０３及び下段表示領域にその上位階層の作業、作業方法、または変数を夫々表示させる（ステップＳ２０６）。
【００５２】
表示部１２の表示画面２００上において、下方の遷移ボタン２０６が選択されると（ステップＳ２０２）、表示制御部１３は、作業枝上において、現在表示されている階層に対して下位階層が存在する場合、表示部１２の表示画面２００の上段表示領域２０３及び下段表示領域にその下位階層の作業、作業方法、又は変数を表示させる（ステップＳ２０７）。
【００５３】
以上、本実施の形態に係る作業変更装置１０において、作業ロボット１が実行する複数の作業及び作業方法と、その作業及び作業方法に関連付けられた変数と、を含む作業情報を複数階層に構成した作業プログラムを記憶する。記憶された作業プログラムの階層毎に作業、作業方法、および作業変数を関連付けて表示部１２の表示画面２００上に選択可能に表示させる。そして、表示部１２の表示画面２００上で選択された一連の作業情報に基づいて作業ロボット１の作業プログラムを変更する。これにより、例えば、作業ロボット１の作業継続が不可能となった場合でも、ユーザは表示部１２の表示画面２００に表示された作業情報を直感的に選択することで、簡易に作業ロボット１の作業プログラムを変更し設定することができる。すなわち、簡易にロボットの作業内容を変更できる。
【００５４】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【００５５】
また、本発明は、例えば、図１９及び図２０に示す処理を、ＣＰＵにコンピュータプログラムを実行させることにより実現することも可能である。
【００５６】
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体（non-transitory computer readable medium）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（tangible storage medium）を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば光磁気ディスク）、ＣＤ−ＲＯＭ（Read Only Memory）、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Programmable ROM）、ＥＰＲＯＭ（Erasable PROM）、フラッシュＲＯＭ、ＲＡＭ（random access memory））を含む。
【００５７】
また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（transitory computer readable medium）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【符号の説明】
【００５８】
１    作業ロボット
２    ロボット本体
３    移動台車
４    アーム
５    カメラ
６    グリッパ
１０    作業変更装置
１１    記憶部
１２    表示部
１３    表示制御部
１４    作業変更部
【図１】
2014210332.tif 000003
【図２】
2014210332.tif 000004
【図３】
2014210332.tif 000005
【図４】
2014210332.tif 000006
【図５】
2014210332.tif 000007
【図６】
2014210332.tif 000008
【図７Ａ】
2014210332.tif 000009
【図７Ｂ】
2014210332.tif 000010
【図８】
2014210332.tif 000011
【図９】
2014210332.tif 000012
【図１０】
2014210332.tif 000013
【図１１】
2014210332.tif 000014
【図１２】
2014210332.tif 000015
【図１３】
2014210332.tif 000016
【図１４】
2014210332.tif 000017
【図１５】
2014210332.tif 000018
【図１６】
2014210332.tif 000019
【図１７】
2014210332.tif 000020
【図１８】
2014210332.tif 000021
【図１９】
2014210332.tif 000022
【図２０】
2014210332.tif 000023