JP5353656B2 - ロボット制御装置 - Google Patents

ロボット制御装置 Download PDF

Info

Publication number
JP5353656B2
JP5353656B2 JP2009266824A JP2009266824A JP5353656B2 JP 5353656 B2 JP5353656 B2 JP 5353656B2 JP 2009266824 A JP2009266824 A JP 2009266824A JP 2009266824 A JP2009266824 A JP 2009266824A JP 5353656 B2 JP5353656 B2 JP 5353656B2
Authority
JP
Japan
Prior art keywords
robot
filtering
unit
work program
sensor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2009266824A
Other languages
English (en)
Other versions
JP2011110630A (ja
Inventor
幸男 橋口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yaskawa Electric Corp
Original Assignee
Yaskawa Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yaskawa Electric Corp filed Critical Yaskawa Electric Corp
Priority to JP2009266824A priority Critical patent/JP5353656B2/ja
Publication of JP2011110630A publication Critical patent/JP2011110630A/ja
Application granted granted Critical
Publication of JP5353656B2 publication Critical patent/JP5353656B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Description

本発明は、ロボット制御装置に関し、特にロボットが外部環境と接触しながら作業を行うロボットの制御装置に関する。
ロボットに対する外部からの接触力を検出する方法として、ロボットアーム本体のベース部に力センサや歪ゲージを設け、ロボットと外部環境との接触が発生しない状態でロボットアーム自身が動作することによってセンサに加わる力(内力)を相殺する推定値を求めておき、接触力が発生した場合は、センサ出力から推定値を差し引き、その結果をロボットに対する接触力として回避運動や動作停止を行うことが知られている(例えば特許文献1参照)。
また、ロボットによる加工作業時の加工力を検出する方法として、加工対象のワークをセットしない状態で教示データを再生し、その際にロボット先端部に取り付けられた力センサの出力を外乱力として記憶しておき、実際にワークに対して加工作業を行う際は、力センサの出力から記憶した外乱力を差し引きながら加工時の外力を検出する方法が知られている(例えば特許文献2参照)。
これら従来技術は、ロボットに作用する外力を検出するために、ロボットに外力が作用していない状態におけるセンサのデータを予め取得しておき、実作業時のセンサ出力から予め取得していたデータを差し引くことによって、外部からロボットに作用している力を抽出するというものであり、教示時のロボットの動作パターンと実際の作業時の動作パターンとが全く同じ場合には実用的な面から有効な手法と考えられる。
特に特許文献1によれば、ロボットのベース部にセンサを設けるため、先端部にセンサを設ける場合と比較してロボットの動作によって配線が断線したり、外部との接触によってセンサが破損したりする恐れがないという利点がある。
なおこうした用途においてはセンサの出力データからノイズを除去する目的で一般的にフィルタリング処理を行うが、従来は固定的なローパスフィルタが一様に使用されていた。
特開2006−21287号公報 特開平4−148307号公報
従来技術においては、センサ出力に対するフィルタリング方法としてカットオフ周波数が固定されたローパスフィルタが用いられており、ロボットの動作の全範囲について、センサ出力から一律に所定のカットオフ周波数以下の低周波成分のみが抽出されることとなる。
しかしながらロボットは作業実行時においては様々な姿勢や形態をとる。ロボットの固有振動数はロボットの姿勢や形態によって変化するので、ロボット自身の動作により発生する振動の大きさは、例えば同じ手首を回転させる動作であってもその姿勢や形態によって変化する。従来はこうした点を考慮せずカットオフ周波数を一定に設定しており、ロボットの姿勢や形態によって接触検出の感度にばらつきが発生するという問題が発生する。すなわちロボットが外部環境と接触していなくても、ロボットの動作に伴う振動を接触と誤検出したり、逆に外部環境と接触しているのに、その状態を検出できなかったりする恐れがあった。
特に組立作業のようにロボットが外部環境との接触を伴う作業を行う場合、接触検出の感度にばらつきがあると、正常な接触であってもロボットが停止して作業が中断したり、逆にロボットが外部環境と衝突しても停止せずに動作を継続してロボットや外部環境を破損してしまったりする恐れがある。
本発明は、こうした点に鑑みてなされたものであり、センサによってロボットと外環境との接触力を検出する場合に、センサ出力のカットオフ周波数をロボットの姿勢や形態に合わせて動的かつ適切に設定することにより、センサ出力からノイズを適切に除去してロボットと外部環境との接触を高感度・高精度に検出可能なロボット制御装置を提供することを目的とする。
上記問題を解決するため、本発明は、次のように構成したものである。
請求項1に記載の発明は、歪みセンサを基台部に備えた多関節ロボットを制御して予め教示された作業プログラムを実行させ、前記作業プログラムを実行中に前記センサの出力から前記ロボットと外部環境との接触を検出するロボット制御装置において、前記制御装置は、前記作業プログラムを実行中に前記センサ出力に対してフィルタ処理を行うフィルタ処理部と、教示時に前記作業プログラムによって前記ロボットを動作させた際の前記センサ出力と前記ロボットの先端位置とを所定のサンプリング周期で記録する初期データ収録部と、前記初期データ収録部に記録された前記センサ出力のデータを、前記ロボットの先端位置が予め複数に分割された前記ロボットの動作領域のいずれの領域に属するかによって分割し、分割された各センサ出力データに対して、ノイズを除去するフィルタのカットオフ周波数を同定するフィルタリングパターン設定部と、前記フィルタ処理部のフィルタリング結果を用いて前記ロボットと外部環境との接触状態を認識する状態認識部とを備え、前記フィルタ処理部は、前記作業プログラムを実行する際に前記センサ出力に対して、前記フィルタリングパターン設定部によって求めた各カットオフ周波数の組み合わせによってフィルタ処理を行い、前記作業プログラムを実行中の前記ロボットの先端位置に応じて前記センサ出力に対するフィルタ処理のカットオフ周波数を変更することを特徴とするものである。
請求項2に記載の発明は、前記フィルタリングパターン設定部によって求めた各カットオフ周波数の組み合わせをフィルタリングパターンとして記憶するフィルタリングパターン記憶部と、前記フィルタリングパターンによってフィルタリングされた前記センサ出力データを基準波形として記憶する基準波形記憶部と、を備え、前記フィルタ処理部は、前記作業プログラムを実行する際に前記センサ出力に対して前記フィルタリングパターンによってフィルタ処理を行い、前記状態認識部は、前記フィルタ処理部のフィルタリング結果と前記基準波形とを比較して前記ロボットと外部環境との接触状態を認識することを特徴とするものである。
請求項3記載の発明は、前記フィルタリングパターン設定部は、前記ロボットの動作領域ごとに分割された各センサ出力データに対し高速フーリエ変換を行ってパワースペクトルが最も大きい周波数成分を前記各領域についてそれぞれ抽出し、前記抽出した各周波数を初期カットオフ周波数とし、前記初期カットオフ周波数を所定の範囲内で変更しながら前記ロボットの動作領域ごとに分割された各センサ出力データをローパスフィルタ処理し、フィルタリング結果の標準偏差を評価値として前記ロボットの動作領域ごとに前記カットオフ周波数を同定することを特徴とするものである。
請求項4に記載の発明は、前記フィルタリングパターン設定部は、前記初期データ収録部に収録された前記センサ出力データを前記フィルタリングパターンによってフィルタ処理した結果を表示する表示部を備えるとともに、作業者の入力に従って前記カットオフ周波数を変更する手動調整手段を備えることを特徴とするものである。
請求項5に記載の発明は、前記フィルタリングパターン記憶部は複数の前記フィルタリングパターンを記憶するとともに、前記基準波形記憶部は複数の前記基準波形を記憶し、前記フィルタ処理部にて使用する前記フィルタリングパターンおよび前記状態認識部にて使用する基準波形とを前記作業プログラムにて指定することを特徴とするものである。
請求項6に記載の発明は、前記状態認識部は、前記基準波形記憶部に記憶された前記基準波形を上下にオフセットして上限リミット値と下限リミット値を生成し、前記フィルタ処理部のフィルタリング結果が前記上限リミット値を越えるか、前記下限リミット値を下回った場合に、前記ロボットの動作を停止させることを特徴とするものである。
請求項7に記載の発明は、前記基準波形のオフセット量を前記作業プログラムにて指定することを特徴とするものである。
請求項1に記載の発明によると、ロボットの動作形態に応じて最適なカットオフ周波数でセンサ出力のフィルタリングを行ってノイズを適切に除去するため、ロボットと外部環境との接触を高感度・高精度に検出することができる。
請求項2に記載の発明によると、実際の作業プログラムによってロボットを動作させた際のセンサ出力をもとにカットオフ周波数を同定するため、適切なカットオフ周波数を同定することができる。
請求項3に記載の発明によると、ロボットの動作形態としてロボットの先端位置を利用することでセンサ出力のデータを簡便に分割することができる。
請求項4に記載の発明によると、計算が簡便で実用的な時間でのカットオフ周波数の同定が可能である。
請求項5に記載の発明によると、作業者がフィルタリングされたセンサ出力のデータ波形を確認しながらカットオフ周波数の微調整を行うことができる。
請求項6に記載の発明によると、作業プログラムごとにセンサ出力に対し適切なフィルタリングパターンを適用できるため、ロボットと外部環境との接触を高感度・高精度に検出することができる。
請求項7に記載の発明によると、ロボットと外部環境との接触の検出に際し、正常な接触であるか異常な接触であるかを区別することができる。
請求項8に記載の発明によると、正常な接触ではロボットの動作を継続して作業効率を維持することができるとともに、異常な接触ではロボットの動作を停止させてロボットや外部環境の破損を防止することができる。
請求項9に記載の発明によると、ロボットと外部環境との接触の検出に際し、異常な接触とする基準を作業プログラムごとに柔軟に変更することができる。
本発明の実施例を示す全体構成図 センサの取り付け例を示す図 ロボットの作業プログラム例を示す図 ロボットの動作領域の分割例を示す図 ロボットの動作領域の別の分割例を示す図 センサの出力波形の例を示す図 周波数解析部での処理を説明する図 センサの出力波形をロボット先端位置が属する領域によって分割した図 ロボットの作業プログラム例を示す図 作業プログラム実行時の接触検出の様子を示す図
以下、本発明の実施の形態について図を参照して説明する。
図1は、本実施例のロボット制御装置およびロボットの構成を模式的に示した図である。
図1において、1は複数の関節駆動部を備えた多関節ロボットである。2は半導体歪ゲージや水晶圧電式による歪センサであってロボット1の基台部に取り付けられている。歪センサはロボットが動作したり外部環境と接触したりする際に基台部に生じる歪みを検出するためのものであり、その歪みの大きさに比例した電圧を出力する。
図2はセンサ取り付けの具体例を示すもので、ロボット1の基台部の4箇所に歪センサ2a、2b、2c、2dが取り付けられている。歪センサの数は図2のように4つに限られるものではなく、さらに増やしてもよい。
本実施例では、ロボット1からやや離れた場所に整列された部品A11をハンド10によって把持し、ロボット1の近くに設置された部品B12に嵌めこんで組み立てるという、ロボットと外部環境との接触を伴う作業を例にとる。
3は、ロボット1を制御するための制御装置で、ロボット1の動作パターンを記述した作業プログラム4と、作業プログラム4を解釈しその実行を制御する作業プログラム実行制御部5と、作業プログラム実行制御部5の出力であるロボット1の各関節の位置指令を入力として電流指令を生成する位置速度制御部6と、位置速度制御部6の出力である電流指令を入力としてロボット1の各関節の駆動モータ(図示せず)を制御するアンプ部7と、センサ2の出力からロボット1の接触状態を監視する作業状況監視部8で構成される。
また作業状況監視部8は、ロボット1が作業プログラム4によって所定の作業を自動実行している間の接触状態を監視する場合と、作業の実行に先立って、作業プログラム4の実行に伴うセンサ2の出力データを収集し、センサ2の出力データのフィルタリングパターンを決定する場合とで処理が異なる。
9は、接触状態の監視か、センサ2の出力データ収集かを切り替えるモード切り替えスイッチである。センサのデータ収集の場合にはモード切り替えスイッチ9を図の「教示時」側に切り替え、作業実行中の接触状態の監視の場合にはモード切り替えスイッチ9を図の「自動運転時」側に切り替えることでセンサ2による検出値の入力先を切り替える。
作業状況監視部8は次の各部によって構成される。
初期データ収録部81は、モード切り替えスイッチ9が「教示時」側に切り替えられた状態において、センサ2の出力を収録する。
周波数解析部82は、初期データ収録部81にて収録した波形データの周波数解析を行う。フィルタリングパターン生成部83は、周波数解析部82での周波数解析の結果を用いて波形データの最適なフィルタリングパターンの組み合わせを生成する。
フィルタリングパターン記憶部84では、フィルタリングパターン生成部83の出力結果であるカットオフ周波数の組合せを記憶する。また基準波形記憶部89は、カットオフ周波数にてローパスフィルタリングされたセンサ2の出力波形を基準波形として記憶する。
表示部87はフィルタリングされたセンサ2の出力波形を表示して作業者に提示するものであり、手動調整手段88はフィルタリングパターン生成部83によるフィルタリングパターンを手動で調整するためのものである。
作業状況監視部8のうち、破線90で囲まれた部分は収集したセンサ2の出力データのフィルタリングパターンを設定する場合に機能する部分で、フィルタリングパターン設定部と呼称する。
さらに作業状況監視部8は、自動実行中のロボットの接触状態監視の場合にフィルタリングパターン記憶部84に記憶された組合せパターンに従ってフィルタリングを行うフィルタ処理部85と、フィルタ処理部85の結果と基準波形記憶部89に記録された波形とを比較してロボット1の外部環境との接触状態を認識する状態認識部86を備える。また状態認識部86にて接触したと認識した場合にロボット1の動作を停止させる停止手段91を備えている。
続いて本実施例の装置の動作の詳細について、
(1)センサ2の出力データを収集し、そのフィルタリングパターンを決定する場合
(2)ロボット1が作業プログラム4によって所定の作業を実行している間の接触状態を監視する場合
に分けてそれぞれ説明する。
上記(1)の場合、まずロボット1に行わせる作業のプログラム4の教示を行う。教示は制御装置3に接続された可搬型教示装置(図示せず)によって実際にロボット1を動作させながら行ってもよいし、いわゆるオフライン教示にて行ってもよい。
図3に作成した作業プログラムの一例を示す。最初の行の「NOP」と最後の行の「END」はそれぞれ作業プログラムの最初と最後であることを明示するための命令で、作業内容に関わらず全ての作業プログラムに存在する。
2行目から4行目の「MOV」がロボットを移動させる命令である。各行の「MOV」の右側にあるP1、P2、P3はMOV命令のパラメータとして与えられ、ロボットの移動先の位置を指定するデータが格納されている変数である。位置の指定方法として、ロボット1の各関節軸の位置を指定したり、ロボット座標系に基づくロボット先端位置を指定したりすることができる。
また「V」はロボットの移動速度を指定するパラメータであって、図3の例では、「V=100」では所定の基準動作速度に対して100%の速度で移動するよう指定し、「V=80」では基準動作速度に対して80%の速度で移動するよう指定している。上記(2)の場合には、ロボット1は図3の作業プログラムで指定した動作を繰り返し実行することとなる。
ここで、ロボット1の動作領域はロボット座標系の原点からの距離によって予め複数の領域に分割されているものとする。領域分割の例を図4に示す。図4ではロボット座標系の原点に近い方からA、B、Cの3つの領域を設定しており、ロボット1の先端が最も外側の領域Cに達している。図4は領域分割の一例に過ぎず、分割する領域の数や各領域のロボット座標系の原点からの距離の範囲は適宜変更可能であり、領域の形状についても、図4では半球状となっているが、図5のように直方体によって領域を規定してもよい。さらに領域の設定も必ずしもロボット座標系に基づかなくてもよい。以降は図4の例に基づき説明する。
作業プログラム4の教示が完了したら、実際に作業を行わせるのに先立ち、作業プログラムの実行に伴いロボット1に生じる振動をセンサ2によって検出する。
この際に、まずモード切り替えスイッチ9を図1の「教示時」側に切り替える。
続いて作業プログラム実行制御部5に教示された作業プログラム4を読み込ませ実行させる。作業プログラム実行制御部5は作業プログラムをもとにロボット1の目標指令位置を自動生成する。なお、作業プログラムからロボットの指令位置を生成する点については公知技術であるため詳細は割愛する。
生成された指令位置が位置速度制御部6に入力され、アンプ部7を介してロボット1が指令された動作を行う。この時、モード切り替えスイッチ9が「教示時」側に切り替えられているので、センサ2の出力は作業状態監視部8の初期データ収納部81へと送られる。なお、モード切り替えスイッチ9の機能は、作業プログラム4内の命令として記述し、作業プログラム実行制御部5によって切り替えるという方法で実現してもよい。
ロボット1が動作を開始すると、初期データ収録部81はセンサ2によって計測された波形データを所定のサンプリング周期で収録する。図2のようにセンサを複数設置した場合は、2a、2b、2c、2dのそれぞれのセンサからの波形データが収録される。図6はセンサ2のうち、センサ2aによって検出された歪みに対応する電圧波形の例を示しており、以降このデータを初期波形データWaと呼称する。
またこれと並行してロボットの各関節のフィードバック位置から求められたロボット座標系に基づくロボットの先端位置も初期データ収納部81へと送られセンサ出力と同じサンプリング周期で収録される。
こうしたデータの収録や、以降で述べるフィルタリングパターンの生成などは図2のすべてのセンサの出力について行われるが、説明を簡単にするためセンサ2aの出力のみについて説明する。
収録された初期波形データは、周波数解析部82に入力される。図7を用いて周波数解析部82での処理を説明する。
周波数解析部82は、領域分割モジュール82aと、公知技術であるFFT(高速フーリエ変換)処理を行う周波数解析モジュール82bとで構成される。領域分割モジュール82aでは、センサ2の出力(図7に示すS(nΔt))を収録した際に同時に収録されたロボット1の先端位置(図7に示すP(nΔt))と、図4に示した領域の情報とを照合し、ロボット1の先端部が領域A〜Cのいずれに存在していたかによって初期波形データWaを分割する。
より具体的に述べると、分割処理モジュール82aにおいて、サンプリング周期ごとのロボット先端位置(図7に示すP(nΔt))のロボット座標系原点からの距離が、領域A、B、Cを定義するロボット座標系原点からの距離(図4のra、rb、rc)と比較され、初期波形データWa(図7に示すS(nΔt))はそのサンプリング時にロボット先端位置がどの領域に存在しているかによって分割される。
図7の例では、(N+1)Δt〜NaΔtの期間ではロボットの先端位置は領域Bに存在し、(Na+1)Δt〜NbΔtの期間ではロボットの先端位置は領域Cに存在し、(Nb+1)Δt〜NcΔtの期間ではロボットの先端位置は領域Bに存在していたとして初期波形データWaが分割されている。図8は、ロボット先端位置がどの領域に属するかによって図7の例のように分割された初期波形データWaを示す図である。図8では、白矢印で示された期間にロボット1の先端位置が一旦図4に示す領域Bから領域Cに移動し、再度領域Bに戻ったことを表している。
次に周波数解析モジュール82bにて、分割された初期波形データWaに対してFFT処理を行い、各領域においてパワースペクトルの最も大きい周波数成分を抽出する。
例えば領域Aでは周波数35Hz、領域Bでは12Hz、領域Cでは8Hzであったとする。
周波数解析部82にて抽出されたこの周波数の組み合わせがフィルタリングパターン生成部83に入力されると、フィルタリングパターン生成部83ではこれらの周波数をカットオフ周波数の基準として、予め設定した範囲で各周波数の値を上下させさせながら領域ごとに分割された初期波形データWaに対しそれぞれのカットオフ周波数にてローパスフィルタ処理を行う。さらにフィルタ処理した各領域の波形データについて次に示す式(1)によって時系列データの標準偏差Tを算出し、この標準偏差が最小となるカットオフ周波数の組み合わせ(例えば領域Aのカットオフ周波数は30Hz、領域Bのカットオフ周波数は15Hz、領域Cのカットオフ周波数は10Hz)を求め、フィルタリングパターンとしてフィルタリングパターン記憶部84に記憶する。
Figure 0005353656
・・・式(1)
ただし、
Δt:サンプリング間隔の時間
S:フィルタリングされたセンサ信号
Figure 0005353656
:センサ信号Sの平均値
n:1以上の整数
k:サンプリングされたデータ数の上限値(整数)
こうして求めた領域ごとのカットオフ周波数を用いてフィルタリング処理された後の初期波形データWaは基準波形として基準波形記憶部89に記憶される。
また、フィルタリング処理された後の初期波形データWaの波形は、フィルタリング結果を表示する表示部87に図6や図8のように表示され、作業者が目視によってフィルタリングの効果を確認することができる。さらに表示部87の表示内容を確認しながら、手動調整手段88を用いて作業者がカットオフ周波数を変更することも可能である。表示部87や手動調整手段88は、それぞれロボット1の作業プログラムを教示する際に利用される可搬型教示装置の表示画面や操作ボタンによって実現してもよい。
以上が、上記(1)センサ2の出力データを収集し、そのフィルタリングパターンを決定する場合の手順である。こうした手順により、作業プログラムに従って動作するロボット1の姿勢や形態の変化に応じて、センサ出力に対し最適なフィルタリングを行うためのカットオフ周波数を決定することができる。
作業プログラムに従ってロボットが動作し、その姿勢や形態が変化するとロボットの固有振動数も変化する。そこで本実施例ではロボットの先端位置がどの領域に存在するかによってロボットの姿勢や形態を大まかに分類し、センサ2の出力からノイズを除去するための適切なカットオフ周波数を領域ごとに同定して、ロボットと外部環境との接触を高感度・高精度に検出できるようにしたのである。
以上では説明を簡単にするためセンサ2aの出力についてのみ説明したが、センサ2b、2c、2dについても同様の処理を行ってフィルタリングパターン記憶部84にフィルタリングパターンを記憶し、基準波形記憶部89にフィルタリング処理された基準波形を記憶する。
またフィルタリングパターン記憶部84や基準波形記憶部89は、作業プログラムの種類に応じてセンサ2a〜2dについての複数のフィルタリングパターンや、フィルタリングパターンに対応した基準波形を記憶することが可能で、各フィルタリングパターンや基準波形に番号を付与することにより、その番号を指定してフィルタリングパターンや基準波形を選ぶことができる。
センサ2の出力はロボットの姿勢や形態の変化の他に動作速度などによっても変化するため、作業プログラムごとに基準波形とフィルタリングパターンを求めておくことでその作業プログラムに適したフィルタリングを行うことができ、ロボットと外部環境との接触の高感度・高精度な検出に寄与する。
次に上記(2)ロボット1が作業プログラム4によって所定の作業を実行している間の外部環境との接触状態を監視する場合について説明する。
上記(2)の場合には、まず図3に示した作業プログラムについて、外部環境との接触状態を監視するよう命令を追加する編集を行う。図9に編集した作業プログラムの例を示す。下線を引いた部分が図3から追加された命令である。追加された命令の意味については後述する。
続いてモード切り替えスイッチ9を図1の「自動運転時」側に切り替えた後、図9のように命令を追加した作業プログラム4を作業プログラム実行制御部5に読み込ませ実行させる。
作業プログラム実行制御部5は作業プログラムをもとにロボット1の目標指令位置を自動生成する。なお、作業プログラムからロボットの指令位置を生成する点については公知技術であるため詳細は割愛する。
生成された指令位置が位置速度制御部6に入力され、アンプ部7を介してロボット1が指定された動作を行う。この時、モード切り替えスイッチ9が「自動運転時」側に切り替えられているので、センサ2の出力はフィルタ処理部85へと送られ、さらにフィルタ処理部85の出力が状態認識部86でチェックされる。
作業プログラム4に追加された命令のうち、2行目の「CHKON」は外部環境との接触状態監視を開始するための命令である。CHKONにパラメータとして与えられる「PAT=1」は、フィルタリングパターン記憶部84に記憶された複数のフィルタリングパターンや、各フィルタリングパターンに関連づけされて基準波形記憶部89に記憶された複数の基準波形のうち、接触状態の監視に用いるものを指定するためのものである。
なお、前述のように、モード切り替えスイッチ9の機能を作業プログラム4のCHKON命令によって実現するようにしてもよい。すなわちCHKON命令を解釈した作業プログラム実行制御部5によって、センサ2の出力がフィルタ処理部85へと送られるよう切り替えが行われるようにしてもよい。
作業プログラム実行制御部5はPATパラメータで指定されたフィルタリングパターンの番号(図9の例では1)をフィルタリングパターン記憶部84に送り、同じくPATパラメータで指定された基準波形の番号(図9の例では1)を基準波形記憶部89に送る。
フィルタリングパターン記憶部84は指定されたフィルタリングパターンをフィルタ処理部85に送出し、基準波形記憶部89は指定された基準波形を状態認識部86に送出する。PATパラメータで指定されたフィルタリングパターンはフィルタ処理部85にてセンサ2の出力をフィルタリングする際に使用され、同じくPATパラメータで指定された基準波形は状態認識部86にてロボット1と外部環境との接触状態を認識する際に使用される。
またLMT=180は、状態認識部86で接触状態を監視する際、基準波形記憶部89から入力された波形をどの程度オフセットさせて後述のリミット値とするかを指定するためのものである。作業プログラム実行制御部5はLMTパラメータで指定された値を状態認識部86に送る。状態認識部86では基準波形をLMTパラメータで指定された値だけ上下にオフセットさせたデータを生成し、これを上下のリミット値とする。図9の例では、基準波形のデータを±180mVオフセットさせて上下リミット値とすることを意味している。状態認識部86での処理の詳細については後述する。
さらに3〜5行目のMOV命令に追加された「UNTIL #IN100」とは「#IN100」が「制御装置3の入力ポート100番」を意味する。本実施例ではセンサ2の出力が入力されるポートとなっている。すなわちセンサ2の出力をモニタし、CHKON命令で指定したリミット値の範囲を越えるまではMOV命令を実行し、リミット値を越えた場合にはMOV命令の実行を停止することを表している。またENDの直前の「CHKOF」は「CHKON」と対となる命令で、外部環境との接触状態監視を停止するための命令である。
フィルタ処理部85では、上記(1)の場合にフィルタリングパターン記憶部84に記憶されたフィルタリングパターン、すなわちカットオフ周波数の組み合わせのうち、PATパラメータで指定されたものを用いてフィルタリングを行う。
この際、ロボットの各関節のフィードバック位置から求められたロボット座標系に基づくロボットの先端位置を取得し、作業プログラムの実行に伴ってロボット1の先端が図4に示したどの領域に含まれるかを逐次判断し、ロボット1の先端が存在する領域に応じてカットオフ周波数を切り替える。
上記(1)の場合を例にとれば、ロボット1の先端位置が領域Aに存在する場合にはカットオフ周波数を30Hzとしてセンサ2の出力をフィルタリングし、領域Bに存在する場合にはカットオフ周波数を15Hzとしてセンサ2の出力をフィルタリングし、領域Cに存在する場合にはカットオフ周波数を10Hzとしてセンサ2の出力をフィルタリングする。こうすることによってロボット1の先端の位置、換言すればロボット1の姿勢や形態に応じて最適なフィルタリング処理が実施されることとなる。
フィルタ処理部85によってフィルタリングされたセンサ2の出力は状態認識部86に送られる。状態認識部86では、上記(1)の手順において基準波形記憶部89に記憶された基準波形データのうちPATパラメータで指定されたものとフィルタ処理部85の出力とを用いて、ロボットと外部環境との接触状態を検出する。
図10を用いて状態認識部86での接触検出の処理を説明する。図10(a)〜(c)は作業プログラムを繰り返し実行している最中に、センサ2の出力の波形を利用してロボット1の接触を検出する様子を示している。
図10(a)〜(c)にはそれぞれ3種類の波形が描かれているが、真ん中がフィルタ処理部85によってフィルタリングされたセンサ2の出力の波形である。図10の波形はフィルタリングされているため、図6の波形の例と比較するとノイズが除去されている。また上下の波形はそれぞれ、基準波形記憶部89に記憶された波形のデータをもとに、LMTパラメータで指定されたリミット値を加えた上限リミットと、同じくLMTパラメータで指定されたリミット値を引いた下限リミットである。基準波形記憶部89に記憶された波形もフィルタリングパターンによってフィルタリングされたものなので、図6の波形の例と比較するとノイズが除去されている。
状態認識部86では、作業プログラムが実行開始されると基準波形記憶部89に記憶された基準波形からこれら上下のリミット値を生成してセンサ2の出力値と逐次比較を行う。
ロボット1が作業プログラムに従って動作している間、センサ2の出力は基準波形記憶部89に記憶された基準波形と全く同じとなることはなく、若干の誤差が生じる。特に組み立て作業のようなロボットと外部環境との接触を伴う作業では接触の際にセンサ2で検出される値と基準波形との差は大きくなる。上限リミット値と下限リミット値は、こうした誤差の許容範囲を規定するものであり、作業プログラム実行中のセンサ2の出力がリミット値の範囲内に収まっていれば、状態認識部86はロボット1が外部環境と接触することなく動作している、あるいは外部環境と接触したとしても想定された範囲内であると判断する。
図10では同じ作業プログラムを3回繰り返した場合を例にとっており、図10(a)が作業プログラム実行1回目における接触状態の検出、図10(b)が2回目における接触状態の検出、図10(c)が3回目における接触状態の検出をそれぞれ示している。
図10(a)〜(c)ではそれぞれ白矢印で指し示した箇所でセンサ2の出力値が上限リミット値を越えている。このようにセンサ2の出力値が上限リミット値を越えた場合または下限リミット値を下回った場合、状態認識部86はロボットと外部環境とが組み立て作業などの正常な接触の範囲を越えて予期せぬ大きな力で接触したと認識して作業プログラム実行制御部5と停止手段91とに停止信号を出力する。
状態認識部からの信号を受けると作業プログラム実行制御部5は図9の作業プログラムの進行を停止し、停止手段91は位置速度制御部6に指令を出力してロボット1を停止させロボットや外部環境の破損を防止する。
またセンサ2の出力値が上限リミット値を越えた場合または下限リミット値を下回った場合に即座にロボット1を停止させずに、センサ2の出力値とリミット値との差分の大きさを所定のしきい値と比較し、差分の大きさがしきい値を下回る場合にはロボット1の動作を継続させるようにしてもよい。
例えば図10(a)の場合はセンサ2の出力値とリミット値との差分が比較的小さく、所定のしきい値以下であったとすると、状態認識部86ではロボットと外部環境が接触したが正常な接触の範囲内であると判断し、ロボットを停止させず作業プログラムの実行を継続する。図10(b)や図10(c)の場合にはセンサ2の出力値とリミット値との差分が大きく、所定のしきい値を越えていたとすると、状態認識部86ではロボットと外部環境が予期せぬ大きな力で接触をしたと判断し、ロボットを停止させる。
このようにセンサ2の出力がリミット範囲を越えた場合でもその差分が小さい場合にはロボットの動作を継続させることで作業を中断させず効率を向上させることができる。
本実施例では、ロボットと外部環境との接触を伴う組み立て作業を例にとって接触状態の検出を行ったが、アーク溶接作業など、ロボットと外部環境とが本来接触することがない作業についても本発明を適用して接触状態の検出が行えることは言うまでもない。
本発明は、ロボットが外環境との接触力を検出する場合に、ノイズを除去して高感度・高精度に検出可能な産業用ロボットの制御装置を提供できる。
1 ロボット
2、2a〜2d 歪みセンサ
3 制御装置
4 作業プログラム
5 作業プログラム実行制御部
6 位置速度制御部
7 アンプ部
8 作業状況監視部
9 モード切り替えスイッチ
10 ハンド
11 部品A
12 部品B
81 初期データ収録部
82 周波数解析部
82a 領域分割モジュール
82b 周波数解析モジュール
83 フィルタリングパターン生成部
84 フィルタリングパターン記憶部
85 フィルタ処理部
86 状態認識部
87 表示部
88 手動調整手段
89 基準波形記憶部
90 フィルタリングパターン設定部
91 停止手段


Claims (7)

  1. 歪みセンサを基台部に備えた多関節ロボットを制御して予め教示された作業プログラムを実行させ、前記作業プログラムを実行中に前記センサの出力から前記ロボットと外部環境との接触を検出するロボット制御装置において、
    前記制御装置は、前記作業プログラムを実行中に前記センサ出力に対してフィルタ処理を行うフィルタ処理部と、
    教示時に前記作業プログラムによって前記ロボットを動作させた際の前記センサ出力と前記ロボットの先端位置とを所定のサンプリング周期で記録する初期データ収録部と、
    前記初期データ収録部に記録された前記センサ出力のデータを、前記ロボットの先端位置が予め複数に分割された前記ロボットの動作領域のいずれの領域に属するかによって分割し、分割された各センサ出力データに対して、ノイズを除去するフィルタのカットオフ周波数を同定するフィルタリングパターン設定部と、
    前記フィルタ処理部のフィルタリング結果を用いて前記ロボットと外部環境との接触状態を認識する状態認識部とを備え、
    前記フィルタ処理部は、前記作業プログラムを実行する際に前記センサ出力に対して、前記フィルタリングパターン設定部によって求めた各カットオフ周波数の組み合わせによってフィルタ処理を行い、前記作業プログラムを実行中の前記ロボットの先端位置に応じて前記センサ出力に対するフィルタ処理のカットオフ周波数を変更することを特徴とするロボット制御装置。
  2. 記フィルタリングパターン設定部によって求めた各カットオフ周波数の組み合わせをフィルタリングパターンとして記憶するフィルタリングパターン記憶部と、
    前記フィルタリングパターンによってフィルタリングされた前記センサ出力データを基準波形として記憶する基準波形記憶部と、を備え、
    前記フィルタ処理部は、前記作業プログラムを実行する際に前記センサ出力に対して前記フィルタリングパターンによってフィルタ処理を行い、
    前記状態認識部は、前記フィルタ処理部のフィルタリング結果と前記基準波形とを比較して前記ロボットと外部環境との接触状態を認識することを特徴とする請求項1記載のロボット制御装置。
  3. 前記フィルタリングパターン設定部は、前記ロボットの動作領域ごとに分割された各センサ出力データに対し高速フーリエ変換を行ってパワースペクトルが最も大きい周波数成分を前記各領域についてそれぞれ抽出し、前記抽出した各周波数を初期カットオフ周波数とし、前記初期カットオフ周波数を所定の範囲内で変更しながら前記ロボットの動作領域ごとに分割された各センサ出力データをローパスフィルタ処理し、フィルタリング結果の標準偏差を評価値として前記ロボットの動作領域ごとに前記カットオフ周波数を同定することを特徴とする請求項1または記載のロボット制御装置。
  4. 前記フィルタリングパターン設定部は、前記初期データ収録部に収録された前記センサ出力データを前記フィルタリングパターンによってフィルタ処理した結果を表示する表示部を備えるとともに、作業者の入力に従って前記カットオフ周波数を変更する手動調整手段を備えることを特徴とする請求項1または記載のロボット制御装置。
  5. 前記フィルタリングパターン記憶部は複数の前記フィルタリングパターンを記憶するとともに、前記基準波形記憶部は複数の前記基準波形を記憶し、前記フィルタ処理部にて使用する前記フィルタリングパターンおよび前記状態認識部にて使用する基準波形とを前記作業プログラムにて指定することを特徴とする請求項2記載のロボット制御装置。
  6. 前記状態認識部は、前記基準波形記憶部に記憶された前記基準波形を上下にオフセットして上限リミット値と下限リミット値を生成し、
    前記フィルタ処理部のフィルタリング結果が前記上限リミット値を越えるか、前記下限リミット値を下回った場合に、前記ロボットの動作を停止させることを特徴とする請求項2記載のロボット制御装置。
  7. 前記基準波形のオフセット量を前記作業プログラムにて指定することを特徴とする請求項記載のロボット制御装置。
JP2009266824A 2009-11-24 2009-11-24 ロボット制御装置 Expired - Fee Related JP5353656B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009266824A JP5353656B2 (ja) 2009-11-24 2009-11-24 ロボット制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009266824A JP5353656B2 (ja) 2009-11-24 2009-11-24 ロボット制御装置

Publications (2)

Publication Number Publication Date
JP2011110630A JP2011110630A (ja) 2011-06-09
JP5353656B2 true JP5353656B2 (ja) 2013-11-27

Family

ID=44233382

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009266824A Expired - Fee Related JP5353656B2 (ja) 2009-11-24 2009-11-24 ロボット制御装置

Country Status (1)

Country Link
JP (1) JP5353656B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102016119600A1 (de) 2015-10-21 2017-04-27 Fanuc Corporation Sicherheitsüberwachungsvorrichtung für einen Roboter
KR20180022419A (ko) * 2016-08-24 2018-03-06 현대자동차주식회사 도장로봇의 스프레이 제어 장치 및 그 방법과 그를 이용한 도장 시스템
WO2018177848A1 (de) 2017-03-29 2018-10-04 Kuka Deutschland Gmbh Überwachungsverfahren und überwachungssystem

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2749974A2 (en) 2012-12-28 2014-07-02 Kabushiki Kaisha Yaskawa Denki Robot teaching system, robot teaching assistant device, and robot teaching method
JP5939202B2 (ja) * 2013-06-04 2016-06-22 株式会社安川電機 ロボット教示補助装置、ロボットシステムおよびロボット教示方法
JP6100727B2 (ja) * 2014-04-09 2017-03-22 ファナック株式会社 リードスルー機能を有する人協調型産業用ロボット
JP5791756B1 (ja) * 2014-05-01 2015-10-07 三菱電機株式会社 閾値波形作成装置
JP6140114B2 (ja) 2014-07-31 2017-05-31 ファナック株式会社 移動式人協調型ロボット
JP5931167B1 (ja) * 2014-12-11 2016-06-08 ファナック株式会社 人間協調型ロボットシステム
JP5896058B2 (ja) * 2015-03-06 2016-03-30 トヨタ自動車株式会社 制御装置、制御方法及びロボット
JP6499621B2 (ja) 2016-08-08 2019-04-10 ファナック株式会社 制御装置及び制御システム
JP6939024B2 (ja) 2017-03-31 2021-09-22 セイコーエプソン株式会社 ロボット制御装置、ロボットおよびロボットシステム
JP2019098407A (ja) * 2017-11-28 2019-06-24 ファナック株式会社 ロボット
JP2020157402A (ja) * 2019-03-26 2020-10-01 セイコーエプソン株式会社 ロボット制御装置、ロボットの制御方法、およびロボットシステム
WO2021241398A1 (ja) * 2020-05-25 2021-12-02 ファナック株式会社 オフライン教示装置および動作プログラム生成方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01310889A (ja) * 1988-06-10 1989-12-14 Toshiba Corp 産業用ロボットの制御装置
JP3144638B2 (ja) * 1990-01-30 2001-03-12 シチズン時計株式会社 コンプライアアンス機構を有するロボットの制御方法
JPH0631664A (ja) * 1992-07-17 1994-02-08 Fujitsu Ltd 倣い制御ロボットの制御装置
JPH07223190A (ja) * 1994-02-03 1995-08-22 Yaskawa Electric Corp ロボット制御装置
JPH07261853A (ja) * 1994-03-23 1995-10-13 Komatsu Ltd ロボットの振動低減装置
JPH08229864A (ja) * 1995-03-01 1996-09-10 Daikin Ind Ltd 産業用ロボットの衝突検知方法およびその装置
JP2001051721A (ja) * 1999-08-17 2001-02-23 Yaskawa Electric Corp 衝突検出装置
JP2006021287A (ja) * 2004-07-09 2006-01-26 Univ Waseda ロボットの接触力検出装置
JP4391381B2 (ja) * 2004-10-06 2009-12-24 株式会社安川電機 多関節ロボットの減速機の異常判定装置及び多関節ロボットの減速機の異常判定方法
JP2007085318A (ja) * 2005-09-26 2007-04-05 Toyota Motor Corp 電磁駆動弁の制御装置
JP4592632B2 (ja) * 2006-03-30 2010-12-01 株式会社東芝 ロボット用触覚センサ装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102016119600A1 (de) 2015-10-21 2017-04-27 Fanuc Corporation Sicherheitsüberwachungsvorrichtung für einen Roboter
KR20180022419A (ko) * 2016-08-24 2018-03-06 현대자동차주식회사 도장로봇의 스프레이 제어 장치 및 그 방법과 그를 이용한 도장 시스템
KR102540914B1 (ko) 2016-08-24 2023-06-07 현대자동차주식회사 도장로봇의 스프레이 제어 장치 및 그 방법과 그를 이용한 도장 시스템
WO2018177848A1 (de) 2017-03-29 2018-10-04 Kuka Deutschland Gmbh Überwachungsverfahren und überwachungssystem

Also Published As

Publication number Publication date
JP2011110630A (ja) 2011-06-09

Similar Documents

Publication Publication Date Title
JP5353656B2 (ja) ロボット制御装置
US10564635B2 (en) Human-cooperative robot system
JP6120720B2 (ja) 周波数分析方法、及びこの周波数分析方法を用いた回転機器の診断方法
EP2431137A2 (en) Reducer abnormality determination method, abnormality determination device, and robot system
CN110186553B (zh) 振动分析装置以及振动分析方法
JP5311294B2 (ja) ロボットの接触位置検出装置
TWI540402B (zh) 馬達控制裝置
EP2541351A2 (en) Block execution sequence display system
US20140103853A1 (en) Motor control device
JPWO2012140770A1 (ja) ロボット制御装置
CN108687767B (zh) 离线编程装置以及离线编程方法
KR101529760B1 (ko) 대역 외란 관측기를 이용한 매니퓰레이터의 충돌에 의한 외란 감지 장치 및, 그 감지 방법
JP2012187641A (ja) ロボット監視システム、及びロボット監視システムの異常判定方法
JP2018062026A (ja) ロボットの速度や加速度を制限する機能を備えたロボット制御装置
JP5236392B2 (ja) 理論機械位置算出手段を有する数値制御装置
KR20130019533A (ko) 로봇의 직접 교시 및 재생 방법 및 이를 구현하는 로봇 제어 장치
JP2012020348A (ja) ロボットによるバリ除去方法
CN105479431A (zh) 惯性导航式机器人示教设备
US11348355B1 (en) Method and system for monitoring manufacturing operations using computer vision for human performed tasks
JP2005216213A (ja) 故障診断システム及び故障診断方法
WO2022153937A1 (ja) 表示装置
US20190077014A1 (en) Controlling an Automation Assembly
JP2006221308A (ja) 異常検出方法および制御装置と、これらを用いた制御システム
CN114851189B (zh) 一种协作机器人的控制方法及协作机器人
JP7056418B2 (ja) 異常判定装置及び異常判定方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120307

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20120316

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130507

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130529

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130730

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130812

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees