(57)【要約】【課題】教示した動作範囲を変更することなく、周辺機器との干渉を回避するように動作プログラムを修正する。【解決手段】ロボット５の動作プログラムを記憶するプログラム記憶部７と、記憶された動作プログラムを実行するプログラム実行部９と、動作プログラムの実行中のロボット５の各動作位置において、動力が遮断された場合のロボット５の停止位置を、ロボット５の動作速度に基づいて推定する停止位置推定部１２と、推定された停止位置が所定の領域内に位置するか否かを判定する停止位置判定部１３と、停止位置が領域外に位置すると判定された場合に、停止位置に対応する動作位置における動作速度を低下させるように動作プログラム内の設定速度を修正する速度修正部１４とを備えるロボットプログラム修正装置２を提供する。【選択図】図１
2018118354.tif 000002
【特許請求の範囲】
【請求項１】
ロボットの動作プログラムを記憶するプログラム記憶部と、
該プログラム記憶部に記憶された前記動作プログラムを実行するプログラム実行部と、
該プログラム実行部による前記動作プログラムの実行中の前記ロボットの各動作位置において、動力が遮断された場合の前記ロボットの停止位置を、該ロボットの動作速度に基づいて推定する停止位置推定部と、
該停止位置推定部により推定された前記停止位置が所定の領域内に位置するか否かを判定する停止位置判定部と、
該停止位置判定部により、前記停止位置が前記領域外に位置すると判定された場合に、当該停止位置に対応する前記動作位置における動作速度を低下させるように前記動作プログラム内の設定速度を修正する速度修正部とを備えるロボットプログラム修正装置。
【請求項２】
請求項１に記載のロボットプログラム修正装置と、
前記停止位置判定部により、前記停止位置が前記領域外に位置すると判定された場合に、アラームを報知して前記ロボットへの動力を遮断するアラーム停止部と、
前記速度修正部による前記設定速度の修正のために前記プログラム実行部により前記動作プログラムを実行する際に、前記アラーム停止部の動作を無効に切り替えるモード切替部とを備えるロボット制御装置。
【請求項３】
前記モード切替部が、前記速度修正部による前記設定速度の修正のために前記プログラム実行部により前記動作プログラムを実行する際に、前記ロボットを停止させたままで前記動作プログラムを実行するように切り替える請求項２に記載のロボット制御装置。
【請求項４】
請求項１に記載のロボットプログラム修正装置を備えるロボットシミュレーション装置。
【請求項５】
予め作成されて記憶されているロボットの動作プログラムを実行する実行ステップと、
該実行ステップによる前記動作プログラムの実行中の前記ロボットの各動作位置において、動力が遮断された場合の前記ロボットの停止位置を、該ロボットの動作速度に基づいて推定する停止位置推定ステップと、
該停止位置推定ステップにより推定された前記停止位置が所定の領域内に位置するか否かを判定する停止位置判定ステップと、
該停止位置判定ステップにより、前記停止位置が前記領域外に位置すると判定された場合に、当該停止位置に対応する前記動作位置における動作速度を低下させるように前記動作プログラム内の設定速度を修正する速度修正ステップとを含むロボットプログラム修正方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットプログラム修正装置、ロボット制御装置、ロボットシミュレーション装置およびロボットプログラム修正方法に関するものである。
【背景技術】
【０００２】
従来、ロボットの速度から算出された惰走距離を考慮してロボットの停止位置を算出する動作範囲設定装置が知られている（例えば、特許文献１参照。）。
特許文献１に開示されている動作範囲設定装置は、惰走距離を考慮してロボットが到達する到達範囲を算出し、周辺機器と干渉しないように動作範囲を調整している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−１７８８４２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１の動作範囲設定装置は、一旦教示した動作範囲を変更するものであり、調整後には所望の動作範囲とは異なる動作範囲となる可能性がある。
本発明は上述した事情に鑑みてなされたものであって、教示した動作範囲を変更することなく、周辺機器との干渉を回避するように動作プログラムを修正することができるロボットプログラム修正装置、ロボット制御装置、ロボットシミュレーション装置およびロボットプログラム修正方法を提供することを目的としている。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明は以下の手段を提供する。
本発明の一態様は、ロボットの動作プログラムを記憶するプログラム記憶部と、該プログラム記憶部に記憶された前記動作プログラムを実行するプログラム実行部と、該プログラム実行部による前記動作プログラムの実行中の前記ロボットの各動作位置において、動力が遮断された場合の前記ロボットの停止位置を、該ロボットの動作速度に基づいて推定する停止位置推定部と、該停止位置推定部により推定された前記停止位置が所定の領域内に位置するか否かを判定する停止位置判定部と、該停止位置判定部により、前記停止位置が前記領域外に位置すると判定された場合に、当該停止位置に対応する前記動作位置における動作速度を低下させるように前記動作プログラム内の設定速度を修正する速度修正部とを備えるロボットプログラム修正装置を提供する。
【０００６】
本態様によれば、プログラム実行部によりプログラム記憶部に記憶されているロボットの動作プログラムを実行すると、ロボットの動作プログラムに記載されている各教示点の位置座標と、次の教示点へ向かう際の設定速度とに基づいて、ロボットの各軸を動作させるように動作プログラムが進行する。動作プログラム実行中のロボットの各動作位置においては、動力が遮断された場合のロボットの停止位置がロボットの動作速度に基づいて停止位置推定部により推定され、推定された停止位置が所定の領域内に位置するか否かについて停止位置判定部により判定される。
【０００７】
そして、停止位置判定部により、推定された停止位置が所定の領域外に位置すると判定された場合に、速度修正部が動作プログラム内の設定速度を低下させるように修正するので、次回同じ位置を通過する際に停止位置判定部により所定の領域外に位置すると判定される可能性を低減することができる。設定速度の低下量を任意に設定できることとし、低下量を大きく設定しておくことにより、１度で停止位置が所定の領域内に位置するように動作プログラムの設定速度を修正することができる。逆に、低下量を小さく設定しておけば、動作プログラムを１回以上実行することにより、停止位置を所定の領域内に位置させることができる最大の設定速度に修正することができる。これにより、動作プログラムにおける各教示点の位置座標を修正せずに、動力が遮断された場合の停止位置が所定の領域外に出ることを防止することができる。
【０００８】
本発明の他の態様は、上記ロボットプログラム修正装置と、前記停止位置判定部により、前記停止位置が前記領域外に位置すると判定された場合に、アラームを報知して前記ロボットへの動力を遮断するアラーム停止部と、前記速度修正部による前記設定速度の修正のために前記プログラム実行部により前記動作プログラムを実行する際に、前記アラーム停止部の動作を無効に切り替えるモード切替部とを備えるロボット制御装置を提供する。
【０００９】
本態様によれば、モード切替部によってアラーム停止部の動作を無効に切り替えた状態で動作プログラムを実行することにより、推定された停止位置が所定の領域外に位置すると判定された場合でもアラームの報知および動力の遮断が行われることなく、該当する動作位置に対応する動作プログラム内の設定速度のみが低下させられるように修正される。そして、動作プログラムの修正が終了した後に、モード切替部によってアラーム停止部の動作を有効に切り替えることにより、動力の遮断によっても停止位置が所定領域外とならないようにロボットを動作させることができるとともに、何らかの理由によって推定された停止位置が所定の領域外に位置すると判定された場合には、アラーム停止部の作動によってアラームを報知して動力を遮断することができる。
【００１０】
上記態様においては、前記モード切替部が、前記速度修正部による前記設定速度の修正のために前記プログラム実行部により前記動作プログラムを実行する際に、前記ロボットを停止させたままで前記動作プログラムを実行するように切り替えてもよい。
【００１１】
このようにすることで、設定速度の修正のためにプログラム実行部により動作プログラムを実行する場合には、ロボットを動作させることなく、動作プログラム内の設定速度を停止位置が所定領域外とならないように修正することができる。これにより、ロボットが周辺機器に干渉することを確実に防止しながら、動作プログラムを修正することができる。
【００１２】
また、本発明の他の態様は、上記ロボットプログラム修正装置を備えるロボットシミュレーション装置を提供する。
本態様によれば、ロボットの３次元モデルを用いて動作プログラムを実行し、推定された停止位置が所定領域外に位置すると判定された動作位置に対応する動作プログラム内の設定速度を修正することができる。
【００１３】
また、本発明の他の態様は、予め作成されて記憶されているロボットの動作プログラムを実行する実行ステップと、該実行ステップによる前記動作プログラムの実行中の前記ロボットの各動作位置において、動力が遮断された場合の前記ロボットの停止位置を、該ロボットの動作速度に基づいて推定する停止位置推定ステップと、該停止位置推定ステップにより推定された前記停止位置が所定の領域内に位置するか否かを判定する停止位置判定ステップと、該停止位置判定ステップにより、前記停止位置が前記領域外に位置すると判定された場合に、当該停止位置に対応する前記動作位置における動作速度を低下させるように前記動作プログラム内の設定速度を修正する速度修正ステップとを含むロボットプログラム修正方法を提供する。
【発明の効果】
【００１４】
本発明によれば、教示した動作範囲を変更することなく、周辺機器との干渉を回避するように動作プログラムを修正することができるという効果を奏する。
【図面の簡単な説明】
【００１５】
【図１】本発明の一実施形態に係るロボットプログラム修正装置を備えるロボット制御装置を示すブロック図である。
【図２】図１のロボットプログラム修正装置に備えられる停止位置推定部の詳細を示すブロック図である。
【図３】図１のロボット制御装置による本発明の一実施形態に係るロボットプログラム修正方法を説明するフローチャートである。
【図４】図１のロボット制御装置の変形例を示すブロック図である。
【発明を実施するための形態】
【００１６】
本発明の一実施形態に係るロボットプログラム修正装置２およびロボット制御装置１について、図面を参照して以下に説明する。
本実施形態に係るロボット制御装置１は、図１に示されるように、本実施形態に係るロボットプログラム修正装置２と、アラーム停止部３と、アラーム停止部３の動作を無効に切替可能なモード切替部４とを備えている。図１においては、説明を簡略化するために、ロボット５の各軸モータ６として単一のモータのみを表示している。
【００１７】
本実施形態に係るロボットプログラム修正装置２は、動作プログラムを記憶するプログラム記憶部７と、プログラム記憶部７に記憶されている動作プログラムを実行してロボット５の各軸モータ６のサーボアンプ８への指令信号を生成するプログラム実行部９と、モータ６に備えられたエンコーダ１０から出力される位置情報に基づいて、電源１１からモータ６への動力が遮断されたときの停止位置を推定する停止位置推定部１２と、推定された停止位置が所定領域内にあるか否かを判定する停止位置判定部１３と、所定領域外にあると判定されたときに、動作プログラムに記載されている設定速度を修正する速度修正部１４とを備えている。図中、符号１５は所定領域の情報を記憶する領域記憶部であり、停止位置判定部１３に接続されている。
【００１８】
停止位置推定部１２は、図２に示されるように、１制御周期前の位置情報を記憶する位置記憶部１６と、エンコーダ１０により検出されたモータ６の現在位置と位置記憶部１６に記憶されている１制御周期前のモータ６の位置との差分を制御周期で除算することにより現在の動作速度を算出する速度算出部１７と、現在の動作速度に基づいて惰走距離を算出する惰走距離算出部１８と、現在位置と惰走距離とに基づいて停止位置を算出する停止位置算出部１９とを備えている。
【００１９】
惰走距離算出部１８は、例えば、ロボット５の動作速度に対応づけて惰走距離を記憶するマップ（図示略）を備え、速度算出部１７により算出された動作速度が入力されるごとに、マップ内から検索された惰走距離を出力するようになっている。なお、惰走距離は、ロボット５に取り付けるツール等の重量によっても異なるので、マップにツール等の重量および動作速度に対応づけて記憶しておき、ツール等の重量を入力させて、入力されたツール等の重量および算出された動作速度に基づいてマップ内から検索することにしてもよい。
【００２０】
停止位置判定部１３は、停止位置算出部１９により算出された停止位置と、領域記憶部１５に記憶されている所定領域の情報とを比較して、停止位置が所定領域内に配置されているか否かを判定するようになっている。そして、停止位置判定部１３は、停止位置が所定領域外に配置されていると判定した場合には、アラーム停止部３および速度修正部１４にその旨を出力するようになっている。
【００２１】
アラーム停止部３は、停止位置判定部１３により停止位置が所定領域外に配置されている旨の判定がなされたことをアラームとして報知する報知部２０と、電源１１からサーボアンプ８への動力の供給を遮断する動力遮断部２１とを備えている。
モード切替部４は、操作者が入力部２２から手動で、停止位置判定部１３から動力遮断部２１への信号をオンオフすることができるスイッチである。操作者が手動でモード切替部４をオフ状態に切り替えることにより、停止位置判定部１３から停止位置が所定領域外に配置されている旨の判定がなされた旨が出力されても動力遮断部２１による動力の遮断は行われないようになっている。
【００２２】
速度修正部１４は、停止位置判定部１３により停止位置が所定領域外に配置されている旨の判定がなされたロボット５の動作位置の動作速度を規定している動作プログラム上の教示点における設定速度を低下させるように動作プログラムを修正するようになっている。
【００２３】
具体的には、動作プログラムは、主として、複数の教示点の座標位置と、各教示点から次の教示点にロボット５を移動させる際の動作速度である設定速度とを設定するものであり、第１教示点と第２教示点との間の各動作位置における動作速度は、第２教示点に設定されている設定速度によって決定される。したがって、第１教示点と第２教示点との間のいずれかの動作位置において停止位置が所定領域外に配置されている旨の判定がなされた場合には、速度修正部１４は第２教示点に設定されている設定速度を低下させるようになっている。速度修正部１４における設定速度の低下量としては、適正な値に予め設定されていればよい。
【００２４】
このように構成された本実施形態に係るロボットプログラム修正装置２およびロボット制御装置１を用いたロボットプログラム修正方法について以下に説明する。
ロボット５の動作プログラムの修正を行うには、図３に示されるように、操作者が入力部２２からモード切替部４を操作して動作プログラムの修正モードに設定する（ステップＳ１）。
【００２５】
例えば、動作モードが修正モードに設定された場合には、係数ＭＯＤＥ＝１が設定され（ステップＳ２，Ｓ３）、修正モードではない場合には係数ＭＯＤＥ＝０が設定される（ステップＳ２，Ｓ４）。
この状態でプログラム実行部９によりプログラム記憶部７に記憶されている動作プログラムを実行することにより（実行ステップＳ５）、所定の制御周期でモータ６のエンコーダ１０から現在位置情報が取得される（ステップＳ６）。現在位置情報と位置記憶部１６に記憶されている１制御周期前の位置情報とから現在の動作速度が算出され、惰走距離が算出され、現在位置情報と惰走距離とから停止位置が推定される（停止位置推定ステップＳ７）。
【００２６】
推定された停止位置は領域記憶部１５に記憶されている所定領域内に存在するか否かが判定され（停止位置判定ステップＳ８）、所定領域内である場合にはステップＳ１２に進行する。停止位置が所定領域外である場合には、報知部２０によりアラームが報知され（ステップＳ９）、修正モードである場合には（ステップＳ１０）、設定速度を低下させるよう動作プログラムの修正が行われる（速度修正ステップＳ１１）。動作プログラムの実行を継続する場合には実行ステップＳ５からの工程が繰り返される（ステップＳ１２）。
修正モードではない場合には（ステップＳ１０）、動力遮断部２１が作動させられてサーボアンプ８への動力が遮断され（ステップＳ１３）、ロボット５が緊急停止させられる。
【００２７】
このように本実施形態に係るロボットプログラム修正装置２、ロボット制御装置１およびロボットプログラム修正方法によれば、停止位置推定部１２によって現在位置および動作速度から推定された停止位置が所定領域外に位置すると停止位置判定部１３により判定された場合に、当該動作位置における速度を低下させるよう動作プログラムを修正するので、次回同じ動作位置において停止位置が所定領域外となるアラームが報知される可能性を低減することができる。
【００２８】
この場合において、本実施形態においては、ロボット５の動作プログラムの各教示点の座標位置を修正するのではなく、停止位置が所定領域外に位置すると判定された動作位置における速度を設定している教示点の設定速度を低下させるので、操作者が教示した動作範囲を変更することなく、周辺機器との干渉を回避することができるという利点がある。
【００２９】
例えば、操作者が所定領域として安全柵間際に教示点を設定した場合に、動作プログラムで設定した設定速度では、当該教示点近傍において動力が遮断され惰走することによってロボット５が安全柵に接触してしまう場合であっても、本実施形態に係るロボットプログラム修正装置２およびロボットプログラム修正方法により、当該教示点近傍におけるロボット５の動作速度を低下させることによって、動力が遮断されて惰走してもロボット５が安全柵に接触しないようにすることができる。このとき、教示点の座標位置が変更されないので、操作者が教示した教示点通りにロボット５を動作させることができる。
【００３０】
なお、速度修正部１４による動作速度の低下量については任意でよいが、低下量を大きく設定することにより、アラーム停止しない設定速度を早期に設定することができる一方、低下量を小さく設定することにより、１回以上の動作プログラムの実行によりアラーム停止しない最大の設定速度を設定することができる。１回の動作プログラムの実行によりアラーム停止しない設定速度に設定されない場合でも動作プログラムを繰り返し実行することにより、アラーム停止しない最大の設定速度に設定することができる。
【００３１】
また、本実施形態においては、動作プログラムを修正するための動作プログラムの実行時に、動力遮断部２１による動力の遮断を無効にするようにモード切替部４を設定することとしたが、モード切替部４はなくてもよい。この場合、推定された停止位置が所定領域外であると判定されるごとに動力が遮断されて緊急停止されるが、その時点で動作速度を低下させるように修正すればよい。
【００３２】
また、モード切替部４として、修正モードの場合に動力遮断部２１を無効にする場合に付いて説明したが、これに代えて、図４に示されるように、プログラム実行部９から出力される指令信号の出力先をサーボアンプ８から動作位置算出部２３に切り替えるものを採用することにしてもよい。動作位置算出部２３は各軸のモータ６の動作を模擬し、プログラム実行時の各動作位置を算出するようになっている。
【００３３】
修正モードの場合には、操作者が入力部２２からモード切替部４により、プログラム実行部９からの指令信号のサーボアンプ８への入力を停止し、その代わりに、動作位置算出部２３に入力されるように切り替えることで、ロボット５を停止させたままの状態で、停止位置を推定し、動作プログラムにおける設定速度を修正することができる。
【００３４】
また、本実施形態においては、ロボット制御装置１においてロボット５を動作させながら設定速度を修正することとしたが、図１に示される各構成要素のモデルをソフトウェアによって構成しパーソナルコンピュータ上において動作プログラムを実行させるロボットシミュレーション装置により、オフラインでロボット５の３次元モデルを動作させながら設定速度を修正することにしてもよい。
【符号の説明】
【００３５】
１  ロボット制御装置
２  ロボットプログラム修正装置
３  アラーム停止部
４  モード切替部
５  ロボット
７  プログラム記憶部
９  プログラム実行部
１２  停止位置推定部
１３  停止位置判定部
１４  速度修正部
Ｓ５  実行ステップ
Ｓ７  停止位置推定ステップ
Ｓ８  停止位置判定ステップ
Ｓ１１  速度修正ステップ
【図１】
2018118354.tif 000003
【図２】
2018118354.tif 000004
【図３】
2018118354.tif 000005
【図４】
2018118354.tif 000006