(57)【要約】【課題】ロボットの用途や作業内容に応じた適切な加減速処理を行うことができるようにする。【解決手段】加工用ロボット１の加減速処理を、補間前加減速又は補間後加減速の何れで行うかを選択する。補間前加減速処理が選択された場合には、加工用ロボット１の加減速前の位置データに対して補間前加減速処理を行い、加減速処理後の位置データに基づいて、モータ２１の変位量を算出する。一方、補間後加減速処理が選択された場合には、加工用ロボット１の加減速前の位置データに基づいて、モータ２１の変位量を算出する。【選択図】図７
2020023013.tif 000002
【特許請求の範囲】
【請求項１】
複数の関節部を有する加工用ロボットの動作を制御するロボット制御方法であって、
前記加工用ロボットの加減速処理を、補間前加減速又は補間後加減速の何れで行うかを選択するステップと、
前記加工用ロボットの位置データに基づいて、前記関節部を駆動させるモータの変位量を算出するステップとを備え、
前記モータの変位量を算出するステップでは、前記補間前加減速処理が選択された場合に、前記加工用ロボットの加減速前の位置データに対して補間前加減速処理を行い、加減速処理後の位置データに基づいて前記モータの変位量を算出する一方、前記補間後加減速処理が選択された場合に、該加工用ロボットの加減速前の位置データに基づいて、該モータの変位量を算出することを特徴とするロボット制御方法。
【請求項２】
請求項１において、
前記加工用ロボットで加工するワークが、ワーク可動部によって移動可能に保持されている場合に、該ワーク可動部の加減速前の位置データに対して補間前加減速処理又は補間後加減速処理を行うステップと、
前記ワーク可動部の加減速後の位置データに基づいて、前記加工用ロボットの加減速前の位置データを算出するステップとを備えたことを特徴とするロボット制御方法。
【請求項３】
請求項１又は２において、
前記モータの変位量が所定の閾値よりも大きい場合に、前記加工用ロボットの加工速度及び加工加速度のうち少なくとも一方を低減するステップとを備えたことを特徴とするロボット制御方法。
【請求項４】
請求項３において、
前記加工用ロボットの加工速度及び加工加速度のうち少なくとも一方を低減した後で、前記モータの変位量を再計算するステップと、
再計算後の前記モータの変位量が前記閾値よりも大きい場合に、前記加工用ロボットの加工速度及び加工加速度のうち少なくとも一方をさらに低減するステップとを備えたことを特徴とするロボット制御方法。
【請求項５】
請求項４において、
前記加工速度及び加工加速度のうち少なくとも一方を低減するステップを所定回数繰り返した後の前記モータの変位量が、前記閾値よりも大きい場合に、前記加工用ロボットの加減速処理を補間後加減速で行うことを特徴とするロボット制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボット制御方法に関するものである。
【背景技術】
【０００２】
ロボットは、構造上、急加速や急減速すると振動が発生し、加工精度の低下や駆動部の損傷が発生する場合がある。そこで、通常は、加減速処理と呼ばれる加速度の調整処理が行われる。これにより、ロボットに与える移動量の指令値を緩やかに変化させて振動を抑えるようにしている。
【０００３】
通常、加減速処理は、ロボットを構成する各モータの移動量を平滑化する手法（補間後加減速）で実現しているが、この手法を用いた場合、移動区間の開始点と終了点の位置は保障されるものの、その途中軌跡には誤差が生じる。これは、平滑化されたことで実際のモータ角度が理想的な角度と異なるものに変化することによる。
【０００４】
そこで、各モータの移動量を平滑化するのではなく、動作軌跡の直交座標系における位置の変化量を平滑化する加減速手法（補間前加減速）を行うようにしたものがある（例えば、特許文献１参照）。この手法では、理想的な動作軌跡に沿って加減速が行われるため、移動区間の開始点や終了点だけでなく、途中軌跡も誤差なく動作することができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第６１００８１６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、補間前加減速では、ロボットの姿勢や移動速度によっては、理想的な動作軌跡に追従させるためにモータが過大な動作を行う可能性があり、どのような場合にも使用できるわけではない。
【０００７】
本発明は、かかる点に鑑みてなされたものであり、その目的は、ロボットの用途や作業内容に応じた適切な加減速処理を行うことができるようにすることにある。
【課題を解決するための手段】
【０００８】
本発明は、複数の関節部を有する加工用ロボットの動作を制御するロボット制御方法を対象とし、次のような解決手段を講じた。
【０００９】
すなわち、第１の発明は、前記加工用ロボットの加減速処理を、補間前加減速又は補間後加減速の何れで行うかを選択するステップと、
前記加工用ロボットの位置データに基づいて、前記関節部を駆動させるモータの変位量を算出するステップとを備え、
前記モータの変位量を算出するステップでは、前記補間前加減速処理が選択された場合に、前記加工用ロボットの加減速前の位置データに対して補間前加減速処理を行い、加減速処理後の位置データに基づいて前記モータの変位量を算出する一方、前記補間後加減速処理が選択された場合に、該加工用ロボットの加減速前の位置データに基づいて、該モータの変位量を算出することを特徴とするものである。
【００１０】
第１の発明では、加工用ロボットの加減速処理を、補間前加減速又は補間後加減速の何れで行うかを選択する。補間前加減速は、理想的な動作軌跡に沿って加減速が行われるため、移動区間の開始点や終了点だけでなく、途中軌跡も誤差なく動作することができる。そのため、高い加工精度が必要な場合に選択すればよい。
【００１１】
一方、補間後加減速は、移動区間の開始点と終了点の位置は保障されるが、その途中軌跡には誤差が生じるため、高い加工精度が必要では無く且つ高速移動させたい場合に選択すればよい。
【００１２】
そして、補間前加減速処理が選択されると、加工用ロボットの加減速前の位置データに対して補間前加減速処理を行い、加減速後の位置データに基づいてモータの変位量が算出される。一方、補間後加減速処理が選択されると、加減速前の位置データに基づいてモータの変位量が算出される。
【００１３】
これにより、ロボットの用途や作業内容に応じて、補間前加減速と補間後加減速とを選択的に切り替えることで、適切な動作軌跡を実現することができる。
【００１４】
例えば、レーザ溶接等の精度が求められる施工では、補間前加減速処理を行うことで高精度動作に切り替え、より高品位な加工を行うことができる。また、次の溶接箇所までロボットを移動させる場合には、高精度動作は必要無いため、補間後加減速処理を行うようにすればよい。
【００１５】
第２の発明は、第１の発明において、
前記加工用ロボットで加工するワークが、ワーク可動部によって移動可能に保持されている場合に、該ワーク可動部の加減速前の位置データに対して補間前加減速処理又は補間後加減速処理を行うステップと、
前記ワーク可動部の加減速後の位置データに基づいて、前記加工用ロボットの加減速前の位置データを算出するステップとを備えたことを特徴とするものである。
【００１６】
第２の発明では、ワークがワーク可動部で移動可能に保持されている場合に、ワーク可動部の加減速前の位置データに対して補間前加減速処理又は補間後加減速処理を行うようにしている。そして、ワーク可動部の加減速後の位置データに基づいて、加工用ロボットの加減速前の位置データを算出するようにしている。
【００１７】
これにより、ワーク可動部の加減速分を考慮して、加工用ロボットの位置データを生成することができる。
【００１８】
第３の発明は、第１又は第２の発明において、
前記モータの変位量が所定の閾値よりも大きい場合に、前記加工用ロボットの加工速度及び加工加速度のうち少なくとも一方を低減するステップとを備えたことを特徴とするものである。
【００１９】
第３の発明では、モータの変位量が所定の閾値よりも大きい、つまり、モータの加速度が大きすぎる場合には、モータの急加速や急減速によって振動が生じるおそれがある。そこで、加工用ロボットの加工速度や加工加速度を低減させてモータの加速度を抑えるようにしている。
【００２０】
第４の発明は、第３の発明において、
前記加工用ロボットの加工速度及び加工加速度のうち少なくとも一方を低減した後で、前記モータの変位量を再計算するステップと、
再計算後の前記モータの変位量が前記閾値よりも大きい場合に、前記加工用ロボットの加工速度及び加工加速度のうち少なくとも一方をさらに低減するステップとを備えたことを特徴とするものである。
【００２１】
第４の発明では、加工用ロボットの加工速度を低減した後で再計算したモータの変位量が閾値よりも大きい場合には、さらに加工速度や加工加速度を低減させるようにしている。つまり、モータの加速度が適正になるまで、繰り返し計算を行うことで、振動の原因となるモータの加速度の制限を行うようにしている。
【００２２】
第５の発明は、第４の発明において、
前記加工速度及び加工加速度のうち少なくとも一方を低減するステップを所定回数繰り返した後の前記モータの変位量が、前記閾値よりも大きい場合に、前記加工用ロボットの加減速処理を補間後加減速で行うことを特徴とするものである。
【００２３】
第５の発明では、加工速度や加工加速度の低減を所定回数繰り返しても、モータの変位量が閾値よりも大きい場合には、加工用ロボットの加減速処理を補間後加減速で行うようにしている。つまり、補間前加減速でのモータの急加速や急減速に伴う振動を十分に抑えることができないと判断して、高精度な動作を行うよりも振動を抑える方を優先して、補間後加減速処理を行うようにしている。
【発明の効果】
【００２４】
本発明によれば、ロボットの用途や作業内容に応じた適切な加減速処理を行うことができる。
【図面の簡単な説明】
【００２５】
【図１】本実施形態に係る加工用ロボットの構成を示す側面図である。
【図２】加工用ロボットの構成を示すブロック図である。
【図３】加工用ロボットのワークに対する動作軌跡を示す図である。
【図４】補間後加減速で行う処理を説明する図である。
【図５】補間前加減速で行う処理を説明する図である。
【図６】ワーク可動部の構成を示すブロック図である。
【図７】加工用ロボットの動作手順を示すフローチャート図である。
【図８】加工用ロボットの動作手順を示すフローチャート図である。
【発明を実施するための形態】
【００２６】
以下、本発明の実施形態を図面に基づいて説明する。なお、以下の好ましい実施形態の説明は、本質的に例示に過ぎず、本発明、その適用物或いはその用途を制限することを意図するものではない。
【００２７】
図１に示すように、加工用ロボット１は、６軸の多関節型のロボットアーム１０を備えている。加工用ロボット１には、ロボットアーム１０の動作を制御するロボット制御装置３０が接続されている。図１に示す例では、加工用ロボット１は、地上に設置された作業台２５に固定されたワークＷに対して加工を行う。なお、加工用ロボット１の関節部の数や、水平多関節型、垂直多関節型等、自由に選択してもよい。
【００２８】
ロボットアーム１０は、台座部１１と、台座部１１に第１関節部Ｊ１を中心に水平方向に旋回可能に支持された肩部１２と、肩部１２に第２関節部Ｊ２を中心に上下方向に旋回可能に支持された下アーム部１３と、下アーム部１３に第３関節部Ｊ３を中心に上下方向に旋回可能に支持された第１の上アーム部１４と、第１の上アーム部１４の先端部に第４関節部Ｊ４を中心に捻り回転可能に支持された第２の上アーム部１５と、第２の上アーム部１５に第５関節部Ｊ５を中心に上下方向に旋回可能に支持された手首部１６と、手首部１６に第６関節部Ｊ６を中心に捻り回転可能に支持された取付部１７とを有する。取付部１７には、溶接トーチ１８が取り付けられている。なお、レーザ切断ヘッドを取り付けてもよい。
【００２９】
第１関節部Ｊ１から第６関節部Ｊ６には、モータ２１（図２参照）が内蔵されている。ロボット制御装置３０は、ティーチング等によって予め入力された動作プログラムに基づいて、第１関節部Ｊ１から第６関節部Ｊ６がそれぞれ目標位置（指令角度）に達するように、第１関節部Ｊ１から第６関節部Ｊ６のモータ２１の駆動を制御する。
【００３０】
図２にも示すように、加工用ロボット１には、モータ２１の動作を制御するロボット制御装置３０が接続されている。ロボット制御装置３０は、入力部３１と、電流制御部３２と、記憶部３４と、制御部３５とを有する。
【００３１】
加工用ロボット１では、エンコーダによって、モータ２１のロータの位置が所定のサンプリング周期で検出される。モータ２１の位置情報は、制御部３５に送信される。
【００３２】
入力部３１は、加工用ロボット１の動作を制御する動作プログラムを入力する。入力部３１で入力された動作プログラムは、制御部３５に送信され、記憶部３４に記憶される。
【００３３】
電流制御部３２には、制御部３５から、トルク指令値とモータ発生トルクが入力される。電流制御部３２は、駆動指令値を算出し、駆動指令値に基づいて、モータ２１に電流を流す。このように、電流制御部３２は、モータ２１の駆動を制御する。
【００３４】
制御部３５は、演算部３６と、選択部３７とを有する。演算部３６は、入力された情報に基づいて各種の演算を行うものである。例えば、演算部３６は、モータ２１の位置情報や、速度及び加速度の情報等に基づいて、動力学トルクを演算する。演算部３６で算出されたトルクは、記憶部３４に送信されて記憶される。また、演算部３６は、後述する補間前加減速処理や補間後加減速処理を行う。
【００３５】
選択部３７は、加工用ロボット１の加減速処理を、補間前加減速又は補間後加減速の何れで行うかを選択する。ここで、補間前加減速を選択するか、又は補間後加減速を選択するかは、加工用ロボット１の動作プログラム内のパラメータとしてユーザが記述しておく。例えば、精密な加工が必要となる区間では補間前加減速、そうでない場合は補間後加減速に設定された命令を動作プログラム上に記述する。
【００３６】
そして、入力部３１に入力された動作プログラムは、制御部３５で読み取られ、選択部３７において、補間前加減速又は補間後加減速の何れを使用するかが選択される。
【００３７】
ここで、補間後加減速は、ロボットアーム１０を構成するモータ２１の移動量を平滑化する手法である。そして、補間後加減速では、移動区間の開始点と終了点の位置は保障されるが、その途中軌跡には誤差が生じるため、高い加工精度が必要では無く且つ高速移動させたい場合に選択すればよい。
【００３８】
一方、補間前加減速は、動作軌跡の直交座標系における位置の変化量を平滑化する加減速手法である。そして、補間前加減速では、理想的な動作軌跡に沿って加減速が行われるため、移動区間の開始点や終了点だけでなく、途中軌跡も誤差なく動作することができる。そのため、高い加工精度が必要な場合に選択すればよい。
【００３９】
具体的に、図３に示すように、加工用ロボット１を用いて、複数箇所にＣ字型のレーザ溶接を行う工程について検討する。このとき、加工精度が必要となるのは、Ｃ字型に溶接されている箇所であり、この区間については、補間前加減速を行うのが適当である。一方、Ｃ字型の溶接箇所から隣りのＣ字型の溶接箇所へと移動する区間は、空走区間であるから、補間後加減速を行うのが適当である。以下、補間後加減速と補間前加減速の具体的な処理内容について説明する。
【００４０】
〈補間後加減速〉
図４に示すように、補間後加減速では、以下の第１〜第５の処理を順に行う。第１の処理では、加工用ロボット１が動作する移動区間の軌跡上の点を補間計算する。つまり、動作開始点Ｓから動作終了点Ｅを繋ぎ、その区間を複数（図４ではＸ１〜Ｘ６）に細かく分割する。これにより、分割点ごとに加工用ロボット１の直交座標系における位置成分（Ｘ，Ｙ，Ｚ，Ｕ，Ｖ，Ｗ）が得られる。ここで、Ｘ，Ｙ，Ｚは、加工点の位置を示し、Ｕ，Ｖ，Ｗは、溶接トーチ１８の姿勢（角度）を示している。
【００４１】
第２の処理では、加工用ロボット１の直交座標系における位置データを、逆運動学演算によってモータ２１の角度（ＲＴ，ＵＡ，ＦＡ，ＲＷ，ＢＷ，ＴＷ）に換算する。なお、ＲＴ，ＵＡ，ＦＡ，ＲＷ，ＢＷ，ＴＷは、それぞれ、第１関節部Ｊ１〜第６関節部Ｊ６のモータ２１の角度を示している。
【００４２】
第３の処理では、各分割区間で必要なモータ２１の角度変位量（△ＲＴ，△ＵＡ，△ＦＡ，△ＲＷ，△ＢＷ，△ＴＷ）を算出する。加工用ロボット１の姿勢によっては、角速度の急加速・急減速が必要となるモータ角度が、第２の処理で算出される可能性がある。なお、図４に示す例では、第１関節部Ｊ１〜第６関節部Ｊ６のモータ２１のうち、何れか１つのモータ２１の変位量について図示している。
【００４３】
第４の処理では、モータ２１の変位量をフィルタリングすることで、平滑化を行う。つまり、急加速や急減速は、加工用ロボット１が振動する原因となるため、急加速や急減速が、緩加速や緩減速となるように、フィルタ処理を行う。
【００４４】
ここで、フィルタは、加速・減速時の速度変化波形を決定付けるものであり、一般には、台形型の加減速を実現する移動平均フィルタや、Ｓ字カーブ型の加減速を実現する２段移動平均フィルタが用いられる。
【００４５】
第５の処理では、フィルタリングされたモータ２１の変位量が得られる。フィルタリングされたモータ２１の角度変化量は平滑化されているので、角速度の変化が緩やかになる。これにより、補間後加減速処理が完了する。
【００４６】
ところで、補間後加減速処理は、所望の軌跡を実現するために必要なモータ２１の角度変化量を強制的に緩やかにするため、理想的な軌跡から逸脱したものとなることがある。そこで、移動区間の開始点や終了点だけでなく、途中軌跡も誤差なく動作するためには、補間前加減速を行うようにすればよい。
【００４７】
〈補間前加減速〉
図５に示すように、補間前加減速では、以下の第１〜第５の処理を順に行う。第１の処理では、加工用ロボット１が動作する移動区間の軌跡上の点を補間計算する。つまり、動作開始点Ｓから動作終了点Ｅを繋ぎ、その区間を複数（図５ではＸ１〜Ｘ６）に細かく分割する。これにより、分割点ごとに加工用ロボット１の直交座標系における位置成分（Ｘ，Ｙ，Ｚ，Ｕ，Ｖ，Ｗ）が得られる。ここで、Ｘ，Ｙ，Ｚは、加工点の位置を示し、Ｕ，Ｖ，Ｗは、溶接トーチ１８の姿勢（角度）を示している。
【００４８】
第２の処理では、加工用ロボット１の分割点間の直交座標系での移動量を算出する。なお、補間後加減速とは異なり、モータ２１の角度を算出するのではない。
【００４９】
第３の処理では、各分割点間の直交座標系での移動量をフィルタリングすることで、平滑化を行う。
【００５０】
第４の処理では、フィルタリングされた直交座標系での移動量が得られる。フィルタリングされた直交座標系での移動量は平滑化されているので、軌跡に沿った移動量の速度変化が緩やかになる。
【００５１】
第５の処理では、第４の処理で得られた移動量に基づいて、逆運動学演算によって、モータ２１の角度（ＲＴ，ＵＡ，ＦＡ，ＲＷ，ＢＷ，ＴＷ）を算出する。これにより、補間前加減速処理が完了する。なお、ＲＴ，ＵＡ，ＦＡ，ＲＷ，ＢＷ，ＴＷは、それぞれ、第１関節部Ｊ１〜第６関節部Ｊ６のモータ２１の角度を示している。
【００５２】
ところで、補間前加減速処理では、軌跡上で加減速を行ってからモータ２１の角度を算出するため、加工用ロボット１の動作は、加減速中であっても軌跡上に位置する。
【００５３】
しかしながら、補間前加減速処理では、第５の処理において逆運動学演算によってモータ２１の角度を算出したときに、理想的な動作軌跡に追従させるために、モータ２１の角度変化が過大となる場合がある。
【００５４】
そこで、本実施形態では、加工用ロボット１の用途や作業内容に応じて、補間前加減速と補間後加減速とを選択的に切り替えるようにしている。
【００５５】
なお、ワークＷの設置形態は、ワークＷを地上に固定された作業台２５に保持する形態（図１参照）だけではなく、ワーク可動部２６を用いて、ワークＷを移動可能に保持する形態としてもよい（図６参照）。
【００５６】
図６に示すように、ワーク可動部２６は、モータ２７を有しており、例えば、ポジショナ（外部軸）や他のハンドリングロボットで構成されている。そして、ワーク可動部２６も加工用ロボット１と同様に、加減速処理が必要となるため、基準となる座標系も加減速することになる。これが、軌跡誤差となって加工品質の劣化の原因となる。そこで、ワークＷが移動可能に保持されている場合には、ワーク可動部２６の加減速分を考慮して、加工用ロボット１の加減速前の位置データを変更するようにしている。
【００５７】
〈補間前加減速と補間後加減速の切り替え手順〉
図７に示すように、まず、ステップＳ１０１では、ワークＷが設置されている基準座標系における加工用ロボット１の理想的な動作軌跡を作成する。ここで、「理想的」とは、構成要素が一切の加減速を行わず、指令した速度まで一瞬で到達する理想状態のことをいい、加減速前位置データともいう。
【００５８】
ステップＳ１０２では、加工用ロボット１の加工を高精度で行うか否かを判定する。ステップＳ１０２での判定が「ＹＥＳ」の場合には、補間前加減速を行うために、ステップＳ１０３に分岐する。ステップＳ１０２での判定が「ＮＯ」の場合には、補間後加減速を行う。なお、補間後加減速処理が選択された場合には、加工用ロボット１の加減速前の位置データに対して逆運動学演算を行い、モータ２１の変位量を算出する。
【００５９】
ステップＳ１０３では、ワークＷを可動させるか否かを判定する。つまり、ワークＷが地上に設置された作業台２５に保持されているか、又は、ワークＷがワーク可動部２６によって移動可能に保持されているのかを判定する。ステップＳ１０３での判定が「ＹＥＳ」の場合には、ステップＳ１０４に分岐する。ステップＳ１０３での判定が「ＮＯ」の場合には、ステップＳ１０７に分岐する。
【００６０】
ステップＳ１０４では、ワーク可動部２６の加減速前の位置データに対して、補間後加減速処理を行う。ここで、加減速処理として補間後加減速を使用しているのは、ワーク可動部２６の補間後加減速によって生じる誤差は、加工用ロボット１側の軌跡によって吸収できるため、より単純な補間後加減速処理を行うようにしている。ただし、場合によっては、補間前加減速処理を行うようにしてもよい。
【００６１】
ステップＳ１０５では、ワーク可動部２６の加減速後の角度データ（位置データ）を作成する。
【００６２】
ステップＳ１０６では、加工用ロボット１の理想的なワーク基準位置データと、ワーク可動部２６の加減速後の位置データとに基づいて、加工用ロボット１の加減速前のロボット座標基準の位置データを算出する。これにより、ワーク可動部２６の加減速分を考慮して、加工用ロボット１の位置データを生成することができる。
【００６３】
ステップＳ１０７では、加工用ロボット１の加減速前のロボット座標基準の位置データに対して、補間前加減速処理を行う。つまり、補間前加減速は、ワークＷが設置された座標系を基準としたツール先端位置の軌跡、すなわち、ワークＷとツール先端の相対位置に対して行われる。
【００６４】
ステップＳ１０８では、補間前加減速処理した後の加減速後の加工用ロボット１の位置データに対して逆運動学演算を行い、各モータ２１の変位量を算出する。
【００６５】
次に、図８に示すように、ステップＳ１０９では、加工用ロボット１の各モータ２１の加速度が適正であるか、つまり、モータ２１の変位量が所定の閾値以下であるかを判定する。つまり、ショックや振動の原因となる加速度の制限を行うようにする。
【００６６】
ステップＳ１０９での判定が「ＹＥＳ」の場合には、加工用ロボット１の各モータ２１の加速度が適正であると判断して、ステップＳ１１８に分岐する。ステップＳ１０９での判定が「ＮＯ」の場合には、モータの許容加速度等を超過していると判断して、ステップＳ１１０に分岐する。なお、モータ２１が適正であるかの閾値は、モータ２１のスペックやユーザの指定によって決まる。
【００６７】
ステップＳ１１０では、加工用ロボット１の加工加速度が低減可能であるかを判定する。ステップＳ１１０での判定が「ＹＥＳ」の場合には、ステップＳ１１１に分岐する。ステップＳ１１０での判定が「ＮＯ」の場合には、ステップＳ１１２に分岐する。
【００６８】
ステップＳ１１１では、加工用ロボット１の加工加速度を低減させることでモータ２１の加速度を抑え、ステップＳ１１４に進む。
【００６９】
ステップＳ１１２では、加工用ロボット１の加工速度が低減可能であるかを判定する。ステップＳ１１２での判定が「ＹＥＳ」の場合には、ステップＳ１１３に分岐する。ステップＳ１１２での判定が「ＮＯ」の場合には、ステップＳ１１７に分岐する。
【００７０】
ステップＳ１１３では、加工用ロボット１の加工速度を低減させることでモータ２１の加速度を抑え、ステップＳ１１４に進む。
【００７１】
なお、加工用ロボット１の加工速度や加工加速度を変更すると、加工結果に影響を及ぼすため、加工速度や加工加速度の低減処理を許可するかは、ユーザの設定に委ねることとしている。
【００７２】
ステップＳ１１４では、加工用ロボット１の加工速度や加工加速度を低減した後で、モータ２１の変位量を再計算する。
【００７３】
ステップＳ１１５では、再計算後のモータ２１の変位量が閾値以下であるか、つまり、モータ２１の加速度が適正であるか、つまり、モータ２１の変位量が所定の閾値以下であるかを判定する。ステップＳ１１５での判定が「ＹＥＳ」の場合には、モータ２１の加速度が適正になったと判断して、ステップＳ１１８に分岐する。ステップＳ１１５での判定が「ＮＯ」の場合には、ステップＳ１１６に分岐する。
【００７４】
ステップＳ１１６では、加工用ロボット１の加工速度及び加工加速度を低減するステップの繰り返し回数が所定回数以下かを判定する。ステップＳ１１６での判定が「ＹＥＳ」の場合には、ステップＳ１１０に戻り、加工速度及び加工加速度をさらに低減させるように調整する。ステップＳ１１６での判定が「ＮＯ」の場合には、ステップＳ１１７に分岐する。なお、加工用ロボット１の加工速度や加工加速度を変更すると、加工結果に影響を及ぼすため、繰り返し回数は、ユーザの設定に委ねることとしている。
【００７５】
ステップＳ１１７では、加工用ロボット１を補間後加減速処理で動作可能かを判定する。ステップＳ１１７での判定が「ＹＥＳ」の場合には、加工用ロボット１に対して補間後加減速処理を行う。つまり、加工用ロボット１の加工速度や加工加速度の低減を所定回数繰り返しても、モータ２１の変位量が閾値よりも大きい場合には、補間前加減速でのモータ２１の急加速や急減速に伴う振動を十分に抑えることができないと判断して、高精度な動作を行うよりも振動を抑える方を優先して、補間後加減速処理を行うようにしている。
【００７６】
ステップＳ１１７での判定が「ＮＯ」の場合には、実行不可であると判断してエラー等を発報する。
【００７７】
ステップＳ１１８では、各モータ２１の加速度や速度が適正範囲内となっているので、各モータ２１の変位量を構成要素である加工用ロボット１やワーク可動部２６に対して指示して動作させ、処理を終了する。
【産業上の利用可能性】
【００７８】
以上説明したように、本発明は、ロボットの用途や作業内容に応じた適切な加減速処理を行うことができるという実用性の高い効果が得られることから、きわめて有用で産業上の利用可能性は高い。
【符号の説明】
【００７９】
１    加工用ロボット
１０    ロボットアーム
２１    モータ
２６    ワーク可動部
３０    ロボット制御装置
３５    制御部
３６    演算部
３７    選択部
Ｊ１〜Ｊ６  関節部
【図１】
2020023013.tif 000003
【図２】
2020023013.tif 000004
【図３】
2020023013.tif 000005
【図４】
2020023013.tif 000006
【図５】
2020023013.tif 000007
【図６】
2020023013.tif 000008
【図７】
2020023013.tif 000009
【図８】
2020023013.tif 000010