(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-08-18
(45)【発行日】2022-08-26
(54)【発明の名称】判定装置、判定方法、及び判定プログラム
(51)【国際特許分類】
B25J 9/16 20060101AFI20220819BHJP
【FI】
B25J9/16
(21)【出願番号】P 2018057110
(22)【出願日】2018-03-23
【審査請求日】2021-03-17
(73)【特許権者】
【識別番号】515086908
【氏名又は名称】株式会社トヨタプロダクションエンジニアリング
(74)【代理人】
【識別番号】110002516
【氏名又は名称】特許業務法人白坂
(72)【発明者】
【氏名】中村 隼人
(72)【発明者】
【氏名】田村 亮祐
【審査官】木原 裕二
(56)【参考文献】
【文献】特開2016-209969(JP,A)
【文献】国際公開第2012/063397(WO,A1)
【文献】特表2017-523054(JP,A)
【文献】米国特許出願公開第2016/0008979(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 9/16
(57)【特許請求の範囲】
【請求項1】
複数軸から成る多関節ロボットの動作プログラムの可否を判定する判定装置であって、
過去に使用した
稼働が保証されている前記多関節ロボットの動作手順を規定した動作プログラムにより規定される多関節ロボットの姿勢制御に基づいて、前記多関節ロボットが取り得る各軸の軸角度の範囲を示す範囲情報を記憶する記憶部と、
新たな多関節ロボットの動作
手順を規定する新たな動作プログラムの入力を受け付ける受付部と、
前記受付部が受け付けた新たな動作プログラムにより前記多関節ロボットを稼働させた場合に前記多関節ロボットがとる姿勢全てにおける前記複数の軸の軸角度が、前記範囲情報において規定される各軸の軸角度の範囲内に含まれているかに基づいて、当該新たな動作プログラムの可否を判定する判定部と、
前記判定部が判定した判定結果を出力する出力部とを備える
判定装置。
【請求項2】
前記範囲情報は、前記複数軸のうち、前記多関節ロボットの先端側の3軸をそれぞれ第1軸、第2軸、第3軸として、三次元平面上に、前記第1軸と、前記第2軸と、前記第3軸との各軸の軸角度の範囲を示す情報であり、
前記判定部は、前記受付部が受け付けた動作過程で前記多関節ロボットを動作させた場合の、前記多関節ロボットの前記第1軸と、前記第2軸と、前記第3軸の軸角度の範囲が、前記範囲情報で規定される前記第1軸と、前記第2軸と、前記第3軸の軸角度の範囲内に含まれるかを判定する
ことを特徴とする請求項1に記載の判定装置。
【請求項3】
前記多関節ロボットは6軸ロボットであって、
前記範囲情報は、前記複数軸のうち、前記多関節ロボットの前記先端側とは逆側の3軸をそれぞれ第4軸、第5軸、第6軸として、三次元平面上に、前記第4軸と、前記第5軸と、前記第6軸との各軸の軸角度の範囲を示す情報であり、
前記判定部は、前記受付部が受け付けた動作過程で前記多関節ロボットを動作させた場合の、前記多関節ロボットの前記第4軸と、前記第5軸と、前記第6軸の軸角度の範囲が、前記範囲情報で規定される前記第4軸と、前記第5軸と、前記第6軸の軸角度の範囲内に含まれるかを判定する
ことを特徴とする請求項2に記載の判定装置。
【請求項4】
前記多関節ロボットの所定の軸について、当該所定の軸がとることができない軸角度を禁止範囲情報として入力される入力部を更に備え、
前記判定部は、前記禁止範囲情報に、前記受付部が受け付けた動作プログラムにより前記多関節ロボットを稼働させた場合にとる姿勢のうち、前記所定の軸が前記禁止範囲情報に含まれるときに、前記新たな動作プログラムを不可と判定する
ことを特徴とする請求項1~3のいずれか一項に記載の判定装置。
【請求項5】
複数軸から成る多関節ロボットの動作プログラムの可否を判定する判定方法であって、
過去に使用した
稼働が保証されている前記多関節ロボットの動作手順を規定した動作プログラムにより規定される多関節ロボットの姿勢制御に基づいて、前記多関節ロボットが取り得る各軸の軸角度の範囲を示す範囲情報を記憶する記憶部にアクセス可能なコンピュータが、
新たな多関節ロボットの動作
手順を規定する新たな動作プログラムの入力を受け付ける受付ステップと、
前記受付ステップにおいて受け付けた新たな動作プログラムにより前記多関節ロボットを稼働させた場合に前記多関節ロボットがとる姿勢全てにおける前記複数の軸の軸角度が、前記範囲情報において規定される各軸の軸角度の範囲内に含まれているかに基づいて、当該新たな動作プログラムの可否を判定する判定ステップと、
前記判定ステップによる判定結果を出力する出力ステップとを含む
判定方法。
【請求項6】
複数軸から成る多関節ロボットの動作プログラムの可否を判定する判定プログラムであって、
過去に使用した
稼働が保証されている前記多関節ロボットの動作手順を規定した動作プログラムにより規定される多関節ロボットの姿勢制御に基づいて、前記多関節ロボットが取り得る各軸の軸角度の範囲を示す範囲情報を記憶する記憶部にアクセス可能なコンピュータに、
新たな多関節ロボットの動作
手順を規定する新たな動作プログラムの入力を受け付ける受付機能と、
前記受付機能が受け付けた新たな動作プログラムにより前記多関節ロボットを稼働させた場合に前記多関節ロボットがとる姿勢全てにおける前記複数の軸の軸角度が、前記範囲情報において規定される各軸の軸角度の範囲内に含まれているかに基づいて、当該新たな動作プログラムの可否を判定する判定機能と、
前記判定機能が判定した判定結果を出力する出力機能とを実現させる
判定プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、多関節ロボットを制御する動作プログラムの可否を判定する判定装置、判定出力方法及び判定プログラムに関する。
【背景技術】
【0002】
近年、各種のロボットの制御において、プログラマが動作プログラムを作成し、当該動作プログラムをロボットに入力することで、想定の動作をさせる。このような動作プログラムにおいては、一般的に、プログラムで規定されるロボットの姿勢が適切かは適宜プログラマが判定することが多いがその処理は煩雑なものとなることが多い。そこで、特許文献1には、ロボットの軌道を作成する方法であって、ロボットの軌道情報に対する変更操作に基づいて編集されたロボット軌道情報の視覚的イメージを表示し、当該イメージにおいてロボットの軌道を教示する教示点を選択し、ロボットの該教示点の位置・姿勢の変更入力を受け付け、変更された位置・姿勢がロボットの移動可能領域内にあるかを判別する技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、上記特許文献1に示す技術は、ロボット軌道の途中の変更された教示点の位置や姿勢が、ロボットの移動可能領域内にあるか否かを判別するだけで、変更が適正かどうかまでしか判定できないという問題があった。そして、ロボットの制御にあっては、動作プログラムそのものが正常に動作するかを容易に判別できることが要望されている。
【0005】
そこで、本発明は上記問題に鑑みてなされたものであり、ロボットの動作を規定する動作プログラムそのものが、当該ロボットにおいて実行可能かどうかを容易に判定できる判定装置、判定出力方法、判定プログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明の一態様に係る判定装置は、複数軸から成る多関節ロボットの動作プログラムの可否を判定する判定装置であって、過去に使用した動作プログラムにより規定される多関節ロボットの姿勢制御に基づいて、多関節ロボットが取り得る各軸の軸角度の範囲を示す範囲情報を記憶する記憶部と、新たな多関節ロボットの動作を規定する新たな動作プログラムの入力を受け付ける受付部と、受付部が受け付けた新たな動作プログラムにより多関節ロボットを稼働させた場合に多関節ロボットがとる姿勢全てにおける複数の軸の軸角度が、範囲情報において規定される各軸の軸角度の範囲内に含まれているかに基づいて、当該新たな動作プログラムの可否を判定する判定部と、判定部が判定した判定結果を出力する出力部とを備える。
【0007】
また、本発明の一態様に係る判定出力方法は、複数軸から成る多関節ロボットの動作プログラムの可否を判定する判定方法であって、過去に使用した動作プログラムにより規定される多関節ロボットの姿勢制御に基づいて、多関節ロボットが取り得る各軸の軸角度の範囲を示す範囲情報を記憶する記憶部にアクセス可能なコンピュータが、新たな多関節ロボットの動作を規定する新たな動作プログラムの入力を受け付ける受付ステップと、受付ステップにおいて受け付けた新たな動作プログラムにより多関節ロボットを稼働させた場合に多関節ロボットがとる姿勢全てにおける複数の軸の軸角度が、範囲情報において規定される各軸の軸角度の範囲内に含まれているかに基づいて、当該新たな動作プログラムの可否を判定する判定ステップと、判定ステップによる判定結果を出力する出力ステップとを含む。
【0008】
また、本発明の一態様に係る判定プログラムは、複数軸から成る多関節ロボットの動作プログラムの可否を判定する判定プログラムであって、過去に使用した動作プログラムにより規定される多関節ロボットの姿勢制御に基づいて、多関節ロボットが取り得る各軸の軸角度の範囲を示す範囲情報を記憶する記憶部にアクセス可能なコンピュータに、新たな多関節ロボットの動作を規定する新たな動作プログラムの入力を受け付ける受付機能と、受付機能が受け付けた新たな動作プログラムにより多関節ロボットを稼働させた場合に多関節ロボットがとる姿勢全てにおける複数の軸の軸角度が、範囲情報において規定される各軸の軸角度の範囲内に含まれているかに基づいて、当該新たな動作プログラムの可否を判定する判定機能と、判定機能が判定した判定結果を出力する出力機能とを実現させる。
【0009】
また、上記判定装置において、範囲情報は、複数軸のうち、多関節ロボットの先端側の3軸をそれぞれ第1軸、第2軸、第3軸として、三次元平面上に、第1軸と、第2軸と、第3軸との各軸の軸角度の範囲を示す情報であり、判定部は、受付部が受け付けた動作過程で多関節ロボットを動作させた場合の、多関節ロボットの第1軸と、第2軸と、第3軸の軸角度の範囲が、範囲情報で規定される第1軸と、第2軸と、第3軸の軸角度の範囲内に含まれるかを判定することとしてもよい。
【0010】
また、上記判定装置において、多関節ロボットは6軸ロボットであって、範囲情報は、複数軸のうち、多関節ロボットの先端側とは逆側の3軸をそれぞれ第4軸、第5軸、第6軸として、三次元平面上に、第4軸と、第5軸と、第6軸との各軸の軸角度の範囲を示す情報であり、判定部は、受付部が受け付けた動作過程で多関節ロボットを動作させた場合の、多関節ロボットの第4軸と、第5軸と、第6軸の軸角度の範囲が、範囲情報で規定される第4軸と、第5軸と、第6軸の軸角度の範囲内に含まれるかを判定することとしてもよい。
【0011】
また、上記判定装置において、多関節ロボットの所定の軸について、当該所定の軸がとることができない軸角度を禁止範囲情報として入力される入力部を更に備え、判定部は、禁止範囲情報に、受付部が受け付けた動作プログラムにより多関節ロボットを稼働させた場合にとる姿勢のうち、所定の軸が禁止範囲情報に含まれるときに、新たな動作プログラムを不可と判定することとしてもよい。
【発明の効果】
【0012】
判定装置は、多関節ロボットのための新たな動作プログラムが正常に動作するか否かを判定することができる。
【図面の簡単な説明】
【0013】
【
図3】動作プログラムの一例を示すデータ概念図である。
【
図4】判定装置のグループ表示処理の動作例を示すフローチャートである。
【
図6】判定装置の他の構成例を示すブロック図である。
【発明を実施するための形態】
【0014】
以下、本発明の一実施態様に係る判定装置について、図面を参照しながら詳細に説明する。
【0015】
<実施形態1>
<構成>
図1に示すように、本発明に係る判定装置100は、受付部110と、記憶部120と、制御部130と、出力部140とを備える。判定装置100は、多関節ロボット1の動作を規定する動作プログラムの可否を判定する装置である。ここで動作プログラムは、多関節ロボット1の動作を規定するものであって、その動作手順を規定するものである。当該動作手順には、例えば、多関節ロボットの各関節の回転や実質的処理(例えば、溶接、物体の把持、何らかの施工など)などが含まれる。また、動作プログラムの可否とは、動作プログラムが正常に動作する否かを示す。
【0016】
ここで、多関節ロボット1について説明する。
図2は、多関節ロボット1の一例である。
図2には、多関節ロボット1が、6軸ロボットであって溶接ロボットである例を示している。本実施の形態における多関節ロボット1は、6軸ロボットであるとして説明するが、多関節ロボット1が6軸ロボットに限定されるものではないことは言うまでもない。6軸ロボットは、
図2に示すように、軸A1(第6軸)が、矢印R1で示される方向に回動し、軸A1に接続された軸A2(第5軸)が、矢印R2で示される方向に回動する。軸A2に接続されたアームM1が軸A2を中心に回動することで、当該アームM1の先に接続された軸A3も移動する。軸A3(第4軸)は、矢印R3で示される方向に回動する。軸A3に接続されたアームM2は、軸A3の回動に伴って、軸A3を中心に回動することで、当該アームM2の先に接続された軸A5(第2軸)も移動する。また、アームM2は、軸A4(第3軸)を中心に矢印R4で示される方向に回動する。これに伴い、軸A5もまた、軸A4を中心に回動することになる。軸A5は、矢印R5で示される方向に回動する軸であり、これに伴って、軸A5の先に接続されているアームM3も回動する。アームM3は、軸A6(第1軸)を中心に、矢印R6で示される方向に回動し、これに伴って、多関節ロボット1の先端部の溶接打点も回動する。なお、多関節ロボット1は、従来のものと同様であるとして、詳細な構成についての説明は割愛する。
【0017】
これらの軸A1~軸A6の各軸の回動により、多関節ロボット1は、先端の溶接点を任意の位置に移動させることができる。判定装置100は、
図1に示すように多関節ロボット1と有線または無線により通信可能に接続されてよく、多関節ロボット1を制御できるように構成されてもよい。
【0018】
図1に戻って、受付部110は、多関節ロボット1を制御するための新たな動作プログラムの入力を受け付ける入力インターフェースである。当該入力は、完成した動作プログラムそのものの入力であってもよいし、ユーザから動作プログラムを規定する各ステップの入力を順次受け付けて判定装置100上で動作プログラムを生成するための入力であってもよい。受付部110は、完成した動作プログラムの入力を受け付ける場合には、例えば、通信により他の装置からの入力を受け付ける通信装置により実現されるものであってもよいし、動作プログラムを記録した記録媒体が接続されるポートにより実現されるものであってもよい。また、直接動作プログラムの各ステップの入力を受け付ける場合には、例えば、ユーザからの入力を受け付けるためのタッチパネルやハードウェアキー、マウスなどのポインティングデバイスなどにより実現されるものであってもよい。また、更には、動作プログラムの入力は実機(多関節ロボット1)を実際にユーザの手で動かし、その過程を動作プログラムとして受け付けるものであってもよい。即ち、多関節ロボット1の先端をユーザが動かし、多関節ロボット1は、その過程における軸値を逐次、出力する。そして、受付部110は、多関節ロボット1から逐次出力された軸値の連なりを動作プログラムとして受け付けることとしてもよい。
【0019】
また、受付部110は、多関節ロボット1の各軸について稼働不可能な軸角度の範囲の入力をユーザから受け付け、制御部130に伝達する。当該稼働不可能な軸角度は、予めユーザが多関節ロボット1の定性的な情報として認識している軸角度であってよい。
【0020】
記憶部120は、判定装置100が動作上必要とする各種プログラム及び各種データを記憶する機能を有する。記憶部120は、各種の記録媒体により実現され、例えば、HDD(Hard Disc Drive)、SSD(Solid State Drive)、フラッシュメモリなどにより実現できる。記憶部120は、過去において多関節ロボット1を動作させた動作プログラムを複数、記憶している。過去において動作させたということは、当該動作プログラムは、多関節ロボット1を確実に問題なく動作させることができたという実績を有し、当該動作プログラムで規定される多関節ロボット1の姿勢は、多関節ロボット1が取り得る姿勢であることが保証される。過去において実行した動作プログラムには、多関節ロボット1の各姿勢における軸角度が定義されており、過去の動作プログラムを記憶していることにより、多関節ロボット1が取り得る各軸の軸角度の範囲を示す範囲情報を記憶しているともいえる。以降、受付部110が受け付けた新たな動作プログラムを、「新動作プログラム」と呼称し、記憶部120において記憶されている過去の動作プログラムを、「旧動作プログラム」と呼称する。また、記憶部120は、受付部110が受け付けた新動作プログラムの可否を判定するための判定プログラムを記憶している。また、記憶部120は、多関節ロボット1の制御用インターフェースとして機能するインターフェースプログラムを記憶していてもよく、多関節ロボット1の各種制御値(信号値、パラメータ値など)を記憶することとしてもよい。
【0021】
制御部130は、判定装置100の各部を制御する機能を有する。制御部130は、記憶部120に記憶されている判定プログラムを読み出して実行することにより、判定装置100としての機能を実行するプロセッサとして実現することができる。制御部130は、受け付けた新動作プログラムの可否を判定する判定部131として機能する。制御部130は、記憶部120に記憶されている複数の旧動作プログラムを参考に、各軸の稼働範囲を特定する。例えば、制御部130は、6軸からなる多関節ロボット1の先端側の3軸(A4~A6)について、旧動作プログラムで規定されている軸値を3次元グラフ上にプロットする。そして、最外部にあるプロット点を結んで当該3軸の取り得る範囲情報として特定する。同様に制御部130は、新動作プログラムについても、規定されている軸角度を当該3次元グラフ上にプロットする。そして、旧動作プログラムで示される範囲情報内に新動作プログラムの全ての軸角度のプロット点が含まれているか否かを判定する。制御部130は、当該判定を、多関節ロボット1の先端側の3軸と、根元側の3軸(A1~A3)とについて行い、先端側の3軸と根元側の3軸との双方において、新動作プログラムの軸角度のプロット点全てが、旧動作プログラムにより規定される軸角度範囲に含まれている場合に、新動作プログラムは、正常に動作し得るプログラムであるとして、「可」と判定し、新動作プログラムの軸角度のプロット点のうち1つでも旧動作プログラムにより規定される軸角度範囲に含まれない場合に、新動作プログラムは、正常に動作し得ないプログラムであるとして、「不可」と判定する。そして、制御部130は、出力部140に当該判定結果を出力するように指示する。
【0022】
そして、出力部140は、判定部131による判定結果を出力する機能を有する。即ち、出力部140は、受付部110が受け付けた新動作プログラムが、動作プログラムとして正常に動作するか否かを示す情報を出力する。当該出力は、文字の表示、画像の表示、音声による出力などにより実現することができ、判定装置100に接続もしくは備えられたモニターやスピーカなどにより実現することができる。出力部140は、新動作プログラムの可否を示す文字情報や、旧動作プログラムと新動作プログラムとのそれぞれの軸値範囲を示す
図5のようなグラフを出力することができる。
【0023】
以上が判定装置100の構成である。
【0024】
<データ>
図3は、新動作プログラム及び旧動作プログラムの構成の一例であり、そのデータ概念図である。
【0025】
図3に示すように、動作プログラム300は、一例として、ステップ情報301と、軸角度情報302とが対応付けられた情報である。
【0026】
ステップ情報301は、動作プログラム300中で、多関節ロボット1が動作する手順を示す情報であり、当該順序に従って、多関節ロボット1は動作することになる。
【0027】
軸角度情報302は、対応するステップ番号を実行する際に、多関節ロボット1の各軸がとるべき軸角度を示す情報である。当該軸角度を出力することで、多関節ロボット1は、当該軸角度で示される角度に回転する。なお、動作プログラム300において、軸角度情報302に代えて、多関節ロボット1が実行すべき他の処理(例えば、多関節ロボット1が溶接ロボットであれば、打点への溶接をする、多関節ロボット1がハンドマニピュレータであれば、所定の物体を把持するなど)が定義されてもよい。
【0028】
以上が動作プログラムの構成の一例である。
【0029】
<動作>
図3は、判定装置100によるグラフ表示処理における動作例を示すフローチャートである。
【0030】
(ステップS401)
ステップS401において、受付部110は、新動作プログラムの入力を受け付ける。受付部110は、受け付けた新動作プログラムを制御部130に伝達する。その後に、判定装置100は、ステップS402の処理に移行する。
【0031】
(ステップS402)
ステップS402において、受付部110は、ユーザから、多関節ロボット1がその構造上、元々稼働不可能となる軸角度がある場合に、その原因となる軸とその軸角度範囲を示す情報の入力を受け付ける。当該範囲がない場合には、本処理は省略することができる。受付部110は、受け付けた軸と軸角度範囲を禁止範囲情報として、制御部130に伝達する。その後に、判定装置100は、ステップS403の処理に移行する。
【0032】
(ステップS403)
ステップS403において、制御部130は、過去に使用した動作プログラムから規定される多関節ロボット1の各軸の稼働範囲を特定する。即ち、制御部130は、記憶部120に記憶されている過去動作プログラムを参照して、各軸について、動作し得る軸範囲を特定する。その後に、判定装置100は、ステップS404の処理に移行する。
【0033】
(ステップS404)
ステップS404において、制御部130は、新動作プログラムで規定される先端側の3軸(A4~A6)の稼働範囲が、ステップS403において特定した先端側の3軸の軸範囲に含まれるか否かを判定する。新動作プログラムで規定される先端側の3軸の稼働範囲全てが、ステップS403において特定した先端側の3軸の軸範囲に含まれると判定した場合には(YES)、ステップS405の処理に移行し、含まれていないと判定した場合には(NO)、ステップS407の処理に移行する。
【0034】
(ステップS405)
ステップS405において、制御部130は、新動作プログラムで規定される先端側とは反対側の根元側の3軸(A1~A3)の稼働範囲が、ステップS403において特定した根元側の3軸の軸範囲に含まれるか否かを判定する。新動作プログラムで規定される根元側の3軸の稼働範囲全てが、ステップS403において特定した根元側の3軸の軸範囲に含まれると判定した場合には(YES)、ステップS406の処理に移行し、含まれていないと判定した場合には(NO)、ステップS407の処理に移行する。
【0035】
(ステップS406)
ステップS406において、制御部130は、入力された新動作プログラムを、「可」と判定し、出力部140に、「可」であることを示す情報を出力させて処理を終了する。
【0036】
(ステップS407)
ステップS407において、制御部130は、入力された新動作プログラムを、「不可」と判定し、出力部140に「不可」であることを示す情報を出力させて処理を終了する。
【0037】
図4に示す処理によって、判定装置100は、多関節ロボット1に対して入力する新動作プログラムが、プログラムとして適正か否かを判定することができる。
【0038】
<具体例>
各軸の軸角度範囲の判定例を、
図5を用いて説明する。
【0039】
図5は、旧動作プログラムによって規定される多関節ロボット1の軸A4~A6の軸角度範囲500と、新動作プログラムによって規定される多関節ロボット1の軸A4~A6の軸角度範囲510(
図5の斜線部)とを三次元的に示したグラフである。
【0040】
軸角度範囲500は、記憶部120に記憶されている旧動作プログラムによって定まるものであり、この範囲内に、新動作プログラムの軸角度範囲510が収まっていなければ、「不可」となる。
【0041】
図5は、新動作プログラムの軸A4~A6の軸角度範囲510が、旧動作プログラムによって規定される軸角度範囲500内に含まれる場合を示している。この場合には、判定装置100は、(軸A1~A3についての判定もしたうえで)新動作プログラムは、「可」であると判定する。
【0042】
なお、図示していないが、判定装置100は、軸A1~A3の軸角度についても同様の判定をする。
【0043】
<まとめ>
上記実施の形態に係る判定装置100によれば、実際に稼働が保証されている旧動作プログラムを参照することで、多関節ロボット1の各軸が取り得る軸角度を特定し、新動作プログラムが実際に動作し得るかを判定することができる。したがって、ユーザは新動作プログラムの詳細を検証せずとも、新動作プログラムが適正に動作するか否かを知ることができるので、動作プログラムを作成するユーザの作成負担を軽減することができる。
【0044】
<補足>
上記実施形態に係る判定装置は、上記実施形態に限定されるものではなく、他の手法により実現されてもよいことは言うまでもない。以下、各種変形例について説明する。
【0045】
(1)上記実施の形態においては特に示していないが、判定装置100は、
図5に示すようなグラフを表示するとともに、各動作プログラムにおける各ステップをポイントとしてプロットしておいてもよい。そして、当該グラフにおいて、軸角度範囲510が、軸角度範囲500よりもはみ出している箇所(ポイント)をユーザが発見した場合に、受付部110は、ユーザから当該箇所(ポイント)を指定する入力を受け付けてもよい。このとき、制御部130は、指定された箇所(ポイント)に対応する、当該箇所に対応する新動作プログラムのステップ番号を特定し、新動作プログラムの該ステップ番号もしくは当該ステップ番号に対応するプログラム部分を出力部140に出力させることとしてもよい。当該処理によれば、ユーザは、新動作プログラムの問題箇所を容易に特定することができるとともに、その修正も容易になる。
【0046】
(2)上記実施の形態においては、多関節ロボット1の一例として6軸ロボットを用いて説明したが、多関節ロボット1は6軸ロボットに限るものではない。5軸ロボットや7軸ロボットなどであってもよいことは言うまでもない。
【0047】
(3)上記実施の形態においては、判定装置100の新動作プログラムの軸角度範囲を、先端側の3軸と、根元側の3軸とで判定をしているが、これはその限りではない。多関節ロボット1を構成する任意の3軸を選択し、当該3軸について、
図5に示すような判定を行うこととしてもよい。なお、先端側の3軸と、根元側の3軸とで判定し、
図5に示すような情報を出力することにより、多関節ロボット1のプログラマにとっては、それぞれの3軸で多関節ロボット1の姿勢を想起しやすいというメリットがあり、先端側の3軸の方が、根元側の3軸よりも多関節ロボット1の姿勢を想起しやすい。
【0048】
(4)上記実施形態においては、判定装置100を機能するプロセッサが判定プログラム等を実行することにより、新動作プログラムの可否を判定することとしているが、これは装置に集積回路(IC(Integrated Circuit)チップ、LSI(Large Scale Integration))等に形成された論理回路(ハードウェア)や専用回路によって実現してもよい。また、これらの回路は、1または複数の集積回路により実現されてよく、上記実施形態に示した複数の機能部の機能を1つの集積回路により実現されることとしてもよい。LSIは、集積度の違いにより、VLSI、スーパーLSI、ウルトラLSIなどと呼称されることもある。すなわち、
図9に示すように、判定装置100を構成する各機能部は、物理的な回路により実現されてもよい。
図9に示すように、判定装置100は、受付回路110aと、記憶回路120aと、制御回路130a(算出回路131a)と、出力回路140aとを備え、各回路は、上述の同名の機能部と同様の機能を有する。
【0049】
また、上記判定プログラムは、プロセッサが読み取り可能な記録媒体に記録されていてよく、記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記判定プログラムは、当該判定プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記プロセッサに供給されてもよい。本発明は、上記判定プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
【0050】
なお、上記判定プログラムは、例えば、ActionScript、JavaScript(登録商標)などのスクリプト言語、Objective-C、Java(登録商標)などのオブジェクト指向プログラミング言語、HTML5などのマークアップ言語などを用いて実装できる。
【0051】
(5)上記実施形態及び各補足に示した構成は、適宜組み合わせることとしてもよい。
【符号の説明】
【0052】
1 多関節ロボット
100 判定装置
110 受け付け部
120 記憶部
130 制御部
131 判定部
140 出力部