JP2023180281A - 加工システム、加工ロボット制御装置及び加工方法 - Google Patents
加工システム、加工ロボット制御装置及び加工方法 Download PDFInfo
- Publication number
- JP2023180281A JP2023180281A JP2022093419A JP2022093419A JP2023180281A JP 2023180281 A JP2023180281 A JP 2023180281A JP 2022093419 A JP2022093419 A JP 2022093419A JP 2022093419 A JP2022093419 A JP 2022093419A JP 2023180281 A JP2023180281 A JP 2023180281A
- Authority
- JP
- Japan
- Prior art keywords
- tool
- rotation speed
- processing
- processing tool
- section
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims description 4
- 238000004364 calculation method Methods 0.000 claims description 156
- 238000003825 pressing Methods 0.000 claims description 96
- 238000003754 machining Methods 0.000 claims description 66
- 238000010183 spectrum analysis Methods 0.000 claims description 12
- 238000000034 method Methods 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 15
- 230000007423 decrease Effects 0.000 description 6
- 230000003247 decreasing effect Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000001514 detection method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000013075 data extraction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000005498 polishing Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
Images
Landscapes
- Manipulator (AREA)
Abstract
【課題】加工ツールの回転数を検知するセンサを別途用いることなく、加工ツールを用いたロボットによる加工品質及び信頼性を改善する。【解決手段】加工システム100Aは、加工ツール1を回転駆動するツール駆動部101と、加工ツール1を支持するロボットアーム200と、加工ツール1の回転駆動により生じる振動を含むロボットアーム200にかかる外力を検知可能な力覚センサ202と、力覚センサ202により検知された外力を示すデータを取得する外力データ取得部301と、外力データ取得部301により取得されたデータに基づいて、加工ツール1の回転数を推定するツール回転数推定部302と、ツール回転数推定部302により推定された加工ツール1の回転数に基づいて、ツール駆動部101を制御する回転制御部303と、を備えた。【選択図】図1
Description
本開示は、加工ツールが取付けられたロボットアームを制御する加工システム、加工ロボット制御装置及び加工方法に関する。
従来、ロボットに加工作業を実施させる場合、ロボットが有するロボットアームの手先に空圧式の加工ツールを取付けることで、加工作業が行われてきた。
一方、この空圧式の加工ツールでは、特性として、過負荷によって加工ツールの回転数が落ちるという点がある。これにより、加工ツールを用いたロボットでは、加工作業が未遂又は不完全で終わることが起きる、並びに、加工品質面及び信頼性において充分ではない、という課題があった。
一方、この空圧式の加工ツールでは、特性として、過負荷によって加工ツールの回転数が落ちるという点がある。これにより、加工ツールを用いたロボットでは、加工作業が未遂又は不完全で終わることが起きる、並びに、加工品質面及び信頼性において充分ではない、という課題があった。
これに対し、光電センサを用いて加工ツールの回転数を検知し、その回転数に応じてワークへの押付け力を調整及び制御する加工システムが提案されている(例えば特許文献1参照)。この加工システムによって、加工ツールを用いたロボットによる加工品質及び信頼性を改善可能となる。
しかしながら、特許文献1に開示されているような加工システムの場合、加工ツールの回転数を検知するセンサと、ロボットアームにかかる押付け力(外力)を検知するためのセンサの両方がそれぞれ必要となる。よって、この加工システムでは、上記の両方のセンサの分だけコストがかかる。
また、特許文献1に開示されているような加工システムの場合、上記の両方のセンサによる検知結果をロボット側にフィードバックする必要がある。そのため、この加工システムでは、配線が多くなり、システム全体が複雑になる。また、この加工システムでは、ソフトウェアとして、両方のセンサの出力結果を取得するためのインターフェイスの実装が必要となる。
なお、上記の両方のセンサのうち、ロボットアームにかかる外力を検知するためのセンサについては、力制御が可能なロボットであれば標準で装備及び対応している場合もある。しかしながら、加工ツールの回転数を検知するセンサについては、ロボットの通常の制御には関係無いので、ユーザが自ら配線等を行う必要がある。
本開示は、上記課題を解決するものであって、加工ツールの回転数を検知するセンサを別途用いることなく、加工ツールを用いたロボットによる加工品質及び信頼性を改善可能な加工システムを提供することを目的としている。
本開示に係る加工システムは、加工ツールを回転駆動するツール駆動部と、加工ツールを支持するロボットアームと、加工ツールの回転駆動により生じる振動を含むロボットアームにかかる外力を検知可能な力覚センサと、力覚センサにより検知された外力を示すデータを取得する外力データ取得部と、外力データ取得部により取得されたデータに基づいて、加工ツールの回転数を推定するツール回転数推定部と、ツール回転数推定部により推定された加工ツールの回転数に基づいて、ツール駆動部を制御する回転制御部と、を備えたことを特徴とする。
本開示によれば、上記のように構成したので、加工ツールの回転数を検知するセンサを別途用いることなく、加工ツールを用いたロボットによる加工品質及び信頼性を改善可能となる。
以下、本開示に係る実施の形態について図面を参照しながら詳細に説明する。
実施の形態1.
図1乃至図3は実施の形態1に係る加工システム100Aの構成例を示す図である。
加工システム100Aは、図1乃至図3に示すように、加工ツール1、ロボット2及び加工ロボット制御装置(コントローラ)3Aを備えている。
実施の形態1.
図1乃至図3は実施の形態1に係る加工システム100Aの構成例を示す図である。
加工システム100Aは、図1乃至図3に示すように、加工ツール1、ロボット2及び加工ロボット制御装置(コントローラ)3Aを備えている。
加工ツール1は、ロボット2が有するロボットアーム200における先端(手先部分)に装着されており、用途に応じて交換可能な先端工具102と、先端工具102を回転させるツール駆動部101と、を有している。
例えば、ツール駆動部101は、空気圧又は電力の供給を受けて、先端工具102を回転させる。言い換えると、ツール駆動部101は、空気圧又は電力の供給を受けて、加工ツール1を回転駆動させる。
加工ツール1は、先端工具102が加工対象物に押付けられている状態で回転駆動することにより加工対象物に対して加工作業を行う。加工ツール1が行う加工作業としては、先端工具102としての刃具を回転させて行う切削加工作業、又は先端工具102としての砥石を回転させて行う研磨加工作業等の加工作業が挙げられる。
例えば、ツール駆動部101は、空気圧又は電力の供給を受けて、先端工具102を回転させる。言い換えると、ツール駆動部101は、空気圧又は電力の供給を受けて、加工ツール1を回転駆動させる。
加工ツール1は、先端工具102が加工対象物に押付けられている状態で回転駆動することにより加工対象物に対して加工作業を行う。加工ツール1が行う加工作業としては、先端工具102としての刃具を回転させて行う切削加工作業、又は先端工具102としての砥石を回転させて行う研磨加工作業等の加工作業が挙げられる。
ロボット2は、図1乃至図3に示すように、ロボットアーム200、アーム駆動部201及びロボットアーム200の力制御を行うための力覚センサ202を備えている。
ロボットアーム200は、先端に支持された加工ツール1を、加工対象物に押付け可能に構成されている。例えば、ロボットアーム200は、アーム駆動部201によって駆動される複数の関節を有している。アーム駆動部201は、各関節を駆動することによって加工ツール1と共にロボットアーム200移動させる。アーム駆動部201は、加工ツール1の先端工具102が加工対象物に接触している状態で、先端工具102から加工対象物に向けて移動させる方向に各関節にトルクを発生させることで、加工ツール1を加工対象物に押付ける。例えば、アーム駆動部201は、各関節の角度を検知可能なサーボ機構によって構成されている。
力覚センサ202は、加工ツール1の回転駆動により生じる振動(微小振動)を含むロボットアーム200にかかる外力を検知可能なセンサである。この力覚センサ202が検知する外力としては、力又はトルクが挙げられる。
そして、力覚センサ202は、外力を示すデータを加工ロボット制御装置3Aに送信する。この際、力覚センサ202は、生データ(検知した外力そのものを示すデータ)を送信してもよいし、検知した外力を力覚センサ202内で力又はトルクに変換した上でその変換後の外力を示すデータを送信してもよい。
そして、力覚センサ202は、外力を示すデータを加工ロボット制御装置3Aに送信する。この際、力覚センサ202は、生データ(検知した外力そのものを示すデータ)を送信してもよいし、検知した外力を力覚センサ202内で力又はトルクに変換した上でその変換後の外力を示すデータを送信してもよい。
力覚センサ202の具体例について、図2に示す。
図2では、力覚センサ202として、ロボットアーム200における先端に取付けられた手先力センサ202aが用いられた場合を示している。この手先力センサ202aは、ロボットアーム200における先端にかかる力を検知可能である。
図2では、力覚センサ202として、ロボットアーム200における先端に取付けられた手先力センサ202aが用いられた場合を示している。この手先力センサ202aは、ロボットアーム200における先端にかかる力を検知可能である。
力覚センサ202の別の具体例について、図3に示す。
図3では、力覚センサ202として、ロボットアーム200の関節毎に取付けられたトルクセンサ202bが用いられた場合を示している。この各トルクセンサ202bは、ロボットアーム200の各関節にかかるトルクを検知可能である。
図3では、力覚センサ202として、ロボットアーム200の関節毎に取付けられたトルクセンサ202bが用いられた場合を示している。この各トルクセンサ202bは、ロボットアーム200の各関節にかかるトルクを検知可能である。
また、力覚センサ202としては、加工ツール1の回転駆動により生じる振動が検知可能である必要がある。例えば、加工ツール1の回転駆動により生じる振動は、先端工具102の重心が回転中心と一致していないことによる先端工具102の回転自体に起因する振動、及び先端工具102が加工対象物に接触しながら回転することによる加工対象物から受ける力に起因する振動がある。
加工ツール1の回転駆動により生じる振動の振幅は小さいため、力覚センサ202は、この振幅を検知できるだけの分解能が必要である。
加工ツール1の回転駆動により生じる振動の振幅は小さいため、力覚センサ202は、この振幅を検知できるだけの分解能が必要である。
また、力覚センサ202は、加工ツール1の回転駆動により生じる振動の周波数を捉えられるだけの帯域が必要である。言い換えると、力覚センサ202は、サンプリング周期が、加工ツール1の先端工具102の1回転に要する時間よりも短い必要がある。ここで、加工ツール1の先端工具102の回転数(以下「加工ツールの先端工具の回転数」を単に「加工ツールの回転数」ともいう。)をr[rpm]とすると、対応する周波数はr/60[Hz]になるため、力覚センサ202は、この周波数よりも広い帯域が必要となる。
なお、力覚センサ202が複数のトルクセンサ202bである場合、各トルクセンサ202bは、ロボットアーム200の全ての関節において上記の性能を満たす必要はなく、例えば加工ツール1に最も近い関節のみが上記性能を満たすのでもよい。
なお、力覚センサ202が複数のトルクセンサ202bである場合、各トルクセンサ202bは、ロボットアーム200の全ての関節において上記の性能を満たす必要はなく、例えば加工ツール1に最も近い関節のみが上記性能を満たすのでもよい。
加工ロボット制御装置3Aは、力覚センサ202により送信されたデータに基づいて、加工ツール1のツール駆動部101の制御を行う。この加工ロボット制御装置3Aは、図1に示すように、外力データ取得部301、ツール回転数演算部302及び指令値演算部303を備えている。
なお、加工ロボット制御装置3Aは、システムLSI(Large Scale Integration)等の処理回路、又はメモリ等に記憶されたプログラムを実行するCPU(Central Processing Unit)等により実現される。
また図1乃至図3では、加工ロボット制御装置3Aが有する構成は、全て、ロボット2の制御を行うコントローラ内に設けられた場合を示しているが、これら構成の一部がロボットに設けられていてもよい。
外力データ取得部301は、力覚センサ202により送信された外力を示すデータを受信することで、当該データを取得する。そして、外力データ取得部301は、取得した外力を示すデータを、ツール回転数演算部302に送信する。
ツール回転数演算部302は、外力データ取得部301により送信されたデータに基づいて、加工ツール1の回転数を推定する。言い換えると、ツール回転数演算部302は、外力データ取得部301により送信されたデータに基づいて、加工ツール1の回転数の推定値を算出する。この際、例えば、ツール回転数演算部302は、外力データ取得部301により送信されたデータに対する高速フーリエ変換又はスペクトル解析の結果に基づいて、加工ツール1の回転数を推定することができる。
そして、ツール回転数演算部302は、推定した加工ツール1の回転数を示すデータを、指令値演算部303に送信する。なお、ツール回転数演算部302は、実施の形態1において、ツール回転数推定部を構成する。
そして、ツール回転数演算部302は、推定した加工ツール1の回転数を示すデータを、指令値演算部303に送信する。なお、ツール回転数演算部302は、実施の形態1において、ツール回転数推定部を構成する。
指令値演算部303は、ツール駆動部101を制御するための指令値であるツール側指令値を算出し、ツール側指令値をツール駆動部101に送信することによって、ツール駆動部101を制御する。言い換えると、指令値演算部303は、ツール側指令値を算出し、ツール側指令値をツール駆動部101に送信することによって、加工ツール1の回転数を制御する。なお、指令値演算部303は、実施の形態1において、回転制御部を構成する。
また、指令値演算部303は、ツール回転数演算部302により送信されたデータに基づいて、ツール側指令値を算出する。例えば、指令値演算部303は、ツール回転数演算部302の推定によって算出された加工ツール1の回転数(以下「ツール回転数演算部の推定によって算出された加工ツールの回転数」を「加工ツールの推定回転数」ともいう。)が低下した際、加工ツール1の回転数を増加させる指令値を算出して、ツール駆動部101に送信する。
より具体的な一例を示す。指令値演算部303は、加工ツール1の推定回転数と、予め設定された加工ツール1の回転数(以下「予め設定された加工ツール1の回転数」を「加工ツールの設定回転数」ともいう。)と、の差分を計算し、その差分に応じてツール側指令値を算出する。例えば、加工作業中に、加工ツール1の推定回転数が設定回転数よりも所定値以上大きくなった場合、加工ツール1にかかる負荷が減少し、加工ツール1の回転数が上昇したと判断し、ツール駆動部101に加工ツール1の回転数を低下させる指令値を送信する。また、加工ツール1の推定回転数が設定回転数よりも所定値以上小さくなった場合、加工ツール1にかかる負荷が増大し、加工ツール1の回転数が低下したと判断し、ツール駆動部101に加工ツール1の回転数を上昇させる指令値を送信する。
このように、加工ツール1の回転数を制御することで、指令値演算部303は、加工作業中の加工ツール1の回転数の変化を抑制し、加工品質及び信頼性の改善を図っている。例えば、指令値演算部303は、加工ツール1の回転数が設定回転数よりも所定値以上大きくなった場合に加工ツール1の回転数を低下させることにより、先端工具102と加工対象物との摩擦熱が過大となること、及び加工対象物に対する加工作業量が過剰となることを抑制することが可能となる。また、指令値演算部303は、加工ツール1の回転数が設定回転数よりも所定値以上小さくなった場合に加工ツール1の回転数を上昇させることにより、加工作業中に加工ツール1が停止することを抑制し、加工が不完全になることを抑制することが可能となる。
なお、指令値演算部303は、加工ツール1の回転数が設定回転数よりも所定値以上大きくなった場合に加工ツール1の回転数を低下させる指令値をツール駆動部101に送信する処理と、加工ツール1の回転数が設定回転数よりも所定値以上小さくなった場合に加工ツール1の回転数を上昇させる指令値をツール駆動部101に送信する処理と、のいずれか一方のみを行うように構成されていてもよい。
また、指令値演算部303がツール駆動部101に送信するツール側指令値は、加工作業に使用する加工ツールによって異なる。例えば、使用する加工ツールが空気圧式の加工ツールである場合、加工ツールに供給される空気圧又は空気の流量等を示す情報をツール側指令値として送信する。一般に、空気圧式の加工ツールは、供給される空気圧又は空気の流量を増加させると回転数が上昇し、供給される空気圧又は空気の流量を減少させると回転数が低下する。また、例えば、使用する加工ツールが電動式の加工ツールである場合、加工ツールに供給される電圧又は電流を示す情報をツール側指令値として送信する。一般に、電動式の加工ツールは、供給される電圧又は電流を増加させると回転数が上昇し、供給される電圧又は電流を減少させると回転数が低下する。また、例えば、加工ツールが、ツール駆動部101に対して回転数を直接指定可能なものである場合、回転数を示す情報をツール側指令値として送信する。
次に、図1乃至図3に示す実施の形態1に係る加工ロボット制御装置3Aの動作例について、図4を参照しながら説明する。図4は、実施の形態1に係る加工ロボット制御装置3Aの動作例を示すフローチャートである。なお、力覚センサ202は、ロボットアーム200にかかる外力を検知し、当該外力を示すデータを加工ロボット制御装置3Aに送信している。
図1乃至図3に示す実施の形態1に係る加工ロボット制御装置3Aの動作例では、図4に示すように、まず、外力データ取得部301は、力覚センサ202により送信された外力を示すデータを受信することで、当該データを取得する(ステップST1)。
そして、外力データ取得部301は、取得した外力を示すデータを、ツール回転数演算部302に送信する。
そして、外力データ取得部301は、取得した外力を示すデータを、ツール回転数演算部302に送信する。
次いで、ツール回転数演算部302は、外力データ取得部301により送信されたデータに基づいて、加工ツール1の回転数の推定値(推定回転数)を算出する(ステップST2)。この際、例えば、ツール回転数演算部302は、高速フーリエ変換又はスペクトル解析を行うことで、加工ツール1の推定回転数を算出することができる。
以下、ツール回転数演算部302による高速フーリエ変換又はスペクトル解析を用いた加工ツール1の推定回転数の算出方法について説明する。
以下、ツール回転数演算部302による高速フーリエ変換又はスペクトル解析を用いた加工ツール1の推定回転数の算出方法について説明する。
例えば、ツール回転数演算部302は、加工ツール1による加工作業中に、図5に示すようなデータが外力データ取得部301から得られたとする。この場合、まず、ツール回転数演算部302は、上記データのうち、所定時間前から現在までのデータを抽出する。この際、データを抽出する時間の長さ、すなわちデータ長を適切な値に設定する必要がある。ツール回転数演算部302は、データを抽出後に高速フーリエ変換又はスペクトル解析を行うが、データ長が十分に長くないと周波数分解能が低くなり、求める回転数の分解能も低くなる。一方、データ長が長いと、求める回転数の分解能は高くなるが、回転数を検知するまでの時間が長くなるので、回転数が変化した場合にツール駆動部101の制御を変えるまでの時間も長くなり、加工品質や信頼性を改善するという目的が達成できなくなる場合がある。よって、この2つのバランスを取って適切なデータ長を決める必要がある。つまり、必要な回転数の分解能と、必要とされる回転数を検知する時間から、設計者が適宜、必要ならば試行錯誤して決めれば良い。
なお、必要な回転数の分解能は加工ツール1の回転数と概ね比例する場合が多いので、最低限必要なデータ長は加工ツール1の回転数から決めることができる。例えば、回転数の推定における分解能として加工ツールの回転数のr%が必要ならば、データ長は先端工具102の1回転に要する時間の約100/r倍以上にするといった手順で決める。つまり、回転数の分解能として回転数の5%が必要ならば、データ長は先端工具102の1回転に要する時間の20倍にする。ここで、先端工具102の1回転に要する時間は、加工ツール1の設定回転数に基づいて算出されてもよいし、ツール回転数演算部302が算出した加工ツール1の推定回転数の、直近の所定期間における平均値に基づいて算出されてもよい。
そして、ツール回転数演算部302は、抽出したデータに対して高速フーリエ変換又はスペクトル解析を行い、データの周波数毎のパワー又は振幅を求める。例えば、ツール回転数演算部302は、取出したデータに対してスペクトル解析を実施すると、図6に示すような結果を得ることができる。図6において、横軸は周波数を示し、縦軸は周波数毎のパワー(パワースペクトル)を示している。
そして、ツール回転数演算部302は、高速フーリエ変換又はスペクトル解析の結果から、パワー又は振幅が最も大きい周波数を、加工ツール1の回転に対応する周波数であると推定し、その周波数から加工ツール1の回転数を推定する。例えば図6では、パワーが最も大きい周波数が20[Hz]であるため、ツール回転数演算部302は、20[Hz]×60[sec]=1200[rpm]が加工ツール1の回転数であると推定する。この際、ツール回転数演算部302は、加工ツール1の回転と関係無い周波数にあるパワー又は振幅のピーク(この例で言えば20[Hz]から離れた周波数にあるピーク)については無視する方がよい。
なお、この演算では、高速フーリエ変換又はスペクトル解析により得られた周波数毎のパワー又は振幅の値そのものではなく、パワー又は振幅が最も大きくなる周波数を求めることで回転数を推定している点に注意を要する。
なお、この演算では、高速フーリエ変換又はスペクトル解析により得られた周波数毎のパワー又は振幅の値そのものではなく、パワー又は振幅が最も大きくなる周波数を求めることで回転数を推定している点に注意を要する。
そして、ツール回転数演算部302は、推定によって算出した加工ツール1の回転数を示すデータを、指令値演算部303に送信する。
次いで、指令値演算部303は、ツール回転数演算部302により算出された加工ツール1の回転数に基づいて、ツール駆動部101に対するツール側指令値を算出し、算出したツール側指令値を、ツール駆動部101に送信する(ステップST10)。この処理において、指令値演算部303は、加工ツール1の推定回転数に基づいて、ツール駆動部101に対するツール側指令値を新たなツール側指令値に更新している。
ツール駆動部101は、指令値演算部303からツール側指令値を受信すると、新たなツール側指令値に基づいて加工ツール1を駆動させる。
次に、図1乃至図3に示す実施の形態1に係る加工ロボット制御装置3Aによる効果について説明する。
力覚センサ202を備えたロボット2の手先に加工ツール1を取付けて加工作業を行う場合、加工ツール1の回転駆動による力は、力覚センサ202にも伝わる。そのため、十分な性能を有する力覚センサ202であれば、加工ツール1の回転駆動による力を検知することが可能である。加工ツール1の回転駆動による力は、通常、回転数に対応した周波数の振動成分を持つため、力覚センサ202の計測値を分析することにより、加工ツール1の回転数を抽出することができる。
力覚センサ202を備えたロボット2の手先に加工ツール1を取付けて加工作業を行う場合、加工ツール1の回転駆動による力は、力覚センサ202にも伝わる。そのため、十分な性能を有する力覚センサ202であれば、加工ツール1の回転駆動による力を検知することが可能である。加工ツール1の回転駆動による力は、通常、回転数に対応した周波数の振動成分を持つため、力覚センサ202の計測値を分析することにより、加工ツール1の回転数を抽出することができる。
そこで、実施の形態1に係る加工ロボット制御装置3Aでは、加工ツール1の回転駆動により生じる振動が力覚センサ202にも伝わること、及び力覚センサ202によって加工ツール1の回転数に対応する周波数の振動成分を検知できることを利用することで、加工ツール1に回転数を検知するセンサが無くても加工ツール1の回転数を検知可能としている。
これにより、実施の形態1に係る加工ロボット制御装置3Aは、力覚センサ202からのデータに基づいて加工ツール1の回転数を算出し、加工ツール1の回転数の制御を行うことができる。これにより、加工ロボット制御装置3Aは、加工品質及び信頼性が高い加工作業を、低コスト化且つ簡易に実現可能となる。また、一般に、力制御を行うロボットであれば力覚センサを標準で装備しているため、上記の効果を、例えば、加工ツール1の回転数を検知するための光電センサ等、別途のセンサを用いることなく実現可能となる。
なお図1では、ロボット2のコントローラ内に、外力データ取得部301及びツール回転数演算部302が設けられた場合を示した。しかしながら、これに限らず、例えば、力覚センサ202と同じ場所に、外力データ取得部301及びツール回転数演算部302が設けられていてもよい。
以上のように、この実施の形態1によれば、加工システム100Aは、加工ツール1を回転駆動するツール駆動部101と、加工ツール1を支持するロボットアーム200と、加工ツール1の回転駆動により生じる振動を含むロボットアーム200にかかる外力を検知可能な力覚センサ202と、力覚センサ202により検知された外力を示すデータを取得する外力データ取得部301と、外力データ取得部301により取得されたデータに基づいて、加工ツール1の回転数を推定するツール回転数演算部302と、ツール回転数演算部302により推定された加工ツール1の回転数に基づいて、ツール駆動部101を制御する指令値演算部303と、を備えた。これにより、実施の形態1に係る加工システム100Aは、加工ツール1の回転数を検知するセンサを別途用いることなく、加工ツール1を用いたロボット2による加工品質及び信頼性を改善可能となる。
実施の形態2.
次に、図7及び図8を参照して、実施の形態2に係る加工システム100Bについて説明する。実施の形態2に係る加工システム100Bは、実施の形態1に係る加工システム100Aに対し、加工ロボット制御装置の構成が異なるが、他の構成については実施の形態1に係る加工システム100Aと同様であり、実施の形態1に係る加工システム100Aと同様の構成については、同一の符号を付して説明を省略する。
次に、図7及び図8を参照して、実施の形態2に係る加工システム100Bについて説明する。実施の形態2に係る加工システム100Bは、実施の形態1に係る加工システム100Aに対し、加工ロボット制御装置の構成が異なるが、他の構成については実施の形態1に係る加工システム100Aと同様であり、実施の形態1に係る加工システム100Aと同様の構成については、同一の符号を付して説明を省略する。
図7は、実施の形態2に係る加工システム100Bの構成例を示す図である。加工システム100Bの加工ロボット制御装置3Bは、力覚センサ202により送信されたデータに基づいて、加工ツール1のツール駆動部101の制御、及びロボットアーム200を移動させるアーム駆動部201の制御を行う。この加工ロボット制御装置3Bは、図7に示すように、外力データ取得部301、ツール回転数演算部302、指令値演算部303、押付け力演算部304及びアーム制御部305を備えている。
実施の形態2に係る力覚センサ202は、ロボットアーム200による加工対象物への加工ツール1の押付け力を制御するのに必要な力を検知可能である必要がある。
例えば、力覚センサ202が手先力センサ202a(図2参照)である場合、手先力センサ202aは、加工ツール1の押付け方向の並進力を検知する。
また、例えば、力覚センサ202が複数のトルクセンサ202b(図3参照)である場合、各トルクセンサ202bは、ロボットアーム200の各関節に発生するトルクを検知する。なお、力覚センサ202が複数のトルクセンサ202bである場合、各トルクセンサ202bは、ロボットアーム200の全ての関節に取付けられていることが望ましいが、押付け力の制御が可能であれば、全ての関節に取付けられているものに限定されない。
例えば、力覚センサ202が手先力センサ202a(図2参照)である場合、手先力センサ202aは、加工ツール1の押付け方向の並進力を検知する。
また、例えば、力覚センサ202が複数のトルクセンサ202b(図3参照)である場合、各トルクセンサ202bは、ロボットアーム200の各関節に発生するトルクを検知する。なお、力覚センサ202が複数のトルクセンサ202bである場合、各トルクセンサ202bは、ロボットアーム200の全ての関節に取付けられていることが望ましいが、押付け力の制御が可能であれば、全ての関節に取付けられているものに限定されない。
外力データ取得部301は、取得した外力を示すデータを、ツール回転数演算部302及び押付け力演算部304に送信する。
押付け力演算部304は、外力データ取得部301により取得されたデータに基づいて、ロボットアーム200によって加工ツール1が加工対象物に押付けられる際の押付け力を算出する。この際、まず、押付け力演算部304は、外力データ取得部301により取得されたデータに基づいて、ロボットアーム200の先端にかかる力(手先力)を算出する。そして、押付け力演算部304は、算出した力から重力に起因する成分を差引くことで、外力に起因する押付け力を推定する。
そして、押付け力演算部304は、ロボットアーム200による押付け力を示すデータを、指令値演算部303及びアーム制御部305に送信する。なお、押付け力演算部304は、実施の形態2において、押付け力算出部を構成する。
そして、押付け力演算部304は、ロボットアーム200による押付け力を示すデータを、指令値演算部303及びアーム制御部305に送信する。なお、押付け力演算部304は、実施の形態2において、押付け力算出部を構成する。
なお、力覚センサ202が複数のトルクセンサ202bである場合、押付け力演算部304は、外力に起因する各関節のトルクを推定し、当該トルクからロボットアーム200による押付け力を算出する。
また、力覚センサ202が加工ツール1の回転駆動により生じる振動を検知可能な場合、押付け力演算部304により推定された手先力には、当該振動による成分が含まれる。そのため、上記振動による成分がアーム駆動部201の制御にとって外乱となる場合には、押付け力演算部304は、当該振動による成分をローパスフィルタ等で取除いてから、アーム制御部305へのデータ送信を行うようにしてもよい。
指令値演算部303は、ツール回転数演算部302が算出した加工ツール1の推測回転数と、押付け力演算部304が算出した押付け力と、に基づいて、ツール駆動部101を制御するためのツール側指令値を算出する。例えば、指令値演算部303は、加工ツール1の推定回転数が設定回転数よりも所定値以上小さく、かつ押付け力が上昇するように変化した場合、加工ツール1の回転数を上昇させるツール側指令値を算出する。また、例えば、指令値演算部303は、加工ツール1の推定回転数が設定回転数よりも所定値以上大きく、かつ押付け力が低下するように変化した場合、加工ツール1の回転数を低下させるツール側指令値を算出し、ツール駆動部101を制御する。
アーム制御部305は、押付け力演算部304により算出された加工ツール1の押付け力に基づいて、ロボットアーム200による押付け力を制御する。言い換えると、アーム制御部305は、押付け力演算部304により算出された加工ツール1の押付け力に基づいて、アーム駆動部201を制御するための指令値であるアーム側指令値を算出する。そして、アーム制御部305は、算出したアーム側指令値を示すデータを、アーム駆動部201に送信する。
例えば、アーム制御部305は、押付け力演算部304により算出された押付け力が、予め設定されている押付け力と一致するようなアーム側指令値を算出することで、アーム駆動部201の制御を行う。なお、アーム制御部305が算出するアーム側指令値は、位置、速度又は電流等、アーム駆動部201を駆動させるための指令値であればよい。また、アーム制御部305は、実施の形態2において、力制御部を構成する。
また、押付け力の現在値とツール回転数の現在値から現在の加工能力を算出し、予め決められた加工能力の指令値との偏差に応じてツール側指令値を算出してもよい。例えば、加工時の加工能力が指令値よりも小さくなった場合、ツール側には回転数が大きくなるような指令値を送信する。その反対に、加工時の加工能力が指令値よりも大きくなった場合、ツール側には回転数が小さくなるような指令値を送信する。このように、ツールの回転数と押付け力からツールの回転数を制御することで、回転数のみで制御する場合より詳細な加工状態の把握が可能となり、加工の品質や信頼性の向上が見込める。
例えば、アーム制御部305は、押付け力演算部304により算出された押付け力が、予め設定されている押付け力と一致するようなアーム側指令値を算出することで、アーム駆動部201の制御を行う。なお、アーム制御部305が算出するアーム側指令値は、位置、速度又は電流等、アーム駆動部201を駆動させるための指令値であればよい。また、アーム制御部305は、実施の形態2において、力制御部を構成する。
また、押付け力の現在値とツール回転数の現在値から現在の加工能力を算出し、予め決められた加工能力の指令値との偏差に応じてツール側指令値を算出してもよい。例えば、加工時の加工能力が指令値よりも小さくなった場合、ツール側には回転数が大きくなるような指令値を送信する。その反対に、加工時の加工能力が指令値よりも大きくなった場合、ツール側には回転数が小さくなるような指令値を送信する。このように、ツールの回転数と押付け力からツールの回転数を制御することで、回転数のみで制御する場合より詳細な加工状態の把握が可能となり、加工の品質や信頼性の向上が見込める。
アーム駆動部201は、アーム制御部305により算出されたアーム側指令値に基づいて、ロボットアーム200を移動させ、加工対象物に対する加工ツール1の押付け力を変化させる。
次に、実施の形態2に係る加工ロボット制御装置3Bの動作例について、図8を参照しながら説明する。図8は、実施の形態2に係る加工ロボット制御装置3Bの動作例を示すフローチャートである。なお、力覚センサ202は、ロボットアーム200にかかる外力を検知し、当該外力を示すデータを加工ロボット制御装置3Bに送信している。
実施の形態2に係る加工ロボット制御装置3Bの動作例では、図8に示すように、ツール回転数演算部302が加工ツール1の回転数の推定を行うと(ステップST2)、押付け力演算部304は、外力データ取得部301が取得したデータに基づいて、加工対象物に対する加工ツール1の押付け力を算出する(ステップST3)。
押付け力演算部304が押付け力を算出すると、指令値演算部303は、ツール回転数演算部302が算出した加工ツール1の推定回転数と、押付け力演算部304が算出した押付け力と、に基づいて、ツール側指令値を算出して、算出したツール側指令値をツール駆動部101へ送信することで、ツール駆動部101を制御する(ステップST11)。
指令値演算部303が算出したツール側指令値をツール駆動部101へ送信すると、アーム制御部305は、押付け力演算部304が算出した押付け力に基づいて、アーム駆動部201を制御するためのアーム側指令値を算出し、算出したアーム側指令値をアーム駆動部201に送信することで、アーム駆動部201を制御する(ステップST12)。
以上のように、実施の形態2によれば、加工システム100Bは、加工ツール1を回転駆動するツール駆動部101と、加工ツール1を支持するロボットアーム200と、加工ツール1の回転駆動により生じる振動を含むロボットアーム200にかかる外力を検知可能な力覚センサ202と、力覚センサ202により検知された外力を示すデータを取得する外力データ取得部301と、外力データ取得部301により取得されたデータに基づいて、加工ツール1の回転数を推定するツール回転数演算部302と、ツール回転数演算部302により推定された加工ツール1の回転数に基づいて、ツール駆動部101を制御する指令値演算部303と、外力データ取得部301により取得されたデータに基づいて、加工対象物に対する加工ツール1の押付け力を算出する押付け力演算部304と、を備え、指令値演算部303は、ツール回転数演算部302により推定された加工ツール1の回転数及び押付け力演算部304により算出された加工ツール1の押付け力に基づいて、ツール駆動部101を制御する。このように、加工ツール1の推定回転数と押付け力とに基づいて加工ツール1の回転数を制御することで、加工ツール1の推定回転数のみで加工ツール1の回転数を制御するよりも、詳細な加工状態の把握が可能となり、加工の品質や信頼性の向上が可能となる。
なお、実施の形態2に係る加工ロボット制御装置3Bは、押付け力演算部304が算出した押付け力に基づいてアーム制御部305がアーム駆動部201を制御しているが、これに限定されない。加工ロボット制御装置は、指令値演算部が、ツール回転数演算部が算出した加工ツールの推定回転数と、押付け力演算部が算出した押付け力と、に基づいて、ツール側指令値を算出するように構成されていればよく、アーム駆動部が加工ツールの押付け力に基づかずにロボットアームの制御を行うものであってもよい。
実施の形態3.
次に、図9及び図10を参照して、実施の形態3に係る加工システム100Cについて説明する。実施の形態3に係る加工システム100Cは、実施の形態2に係る加工システム100Bに対して、指令値演算部303及びアーム制御部305が行う処理が異なるが、他の構成については実施の形態2に係る加工システム100Bと同様であり、実施の形態2に係る加工システム100Bと同様の構成については、同一の符号を付して説明を省略する。
次に、図9及び図10を参照して、実施の形態3に係る加工システム100Cについて説明する。実施の形態3に係る加工システム100Cは、実施の形態2に係る加工システム100Bに対して、指令値演算部303及びアーム制御部305が行う処理が異なるが、他の構成については実施の形態2に係る加工システム100Bと同様であり、実施の形態2に係る加工システム100Bと同様の構成については、同一の符号を付して説明を省略する。
図9は、実施の形態3に係る加工システム100Cの構成例を示す図である。加工システム100Cのアーム制御部305は、力覚センサ202により送信されたデータに基づいて、加工ツール1のツール駆動部101の制御、及びロボットアーム200を移動させるアーム駆動部201の制御を行う。この加工ロボット制御装置3Cは、図9に示すように、外力データ取得部301、ツール回転数演算部302、指令値演算部303、押付け力演算部304及びアーム制御部305を備えている。
実施の形態3に係る指令値演算部303は、ツール回転数演算部302から送信された加工ツール1の回転数を示すデータに基づいて、ツール側指令値に加えて、加工対象物に対する加工ツール1の押付け力を変化させるための指令値である押付け力指令値を算出する。指令値演算部303は、算出した押付け力指令値をアーム制御部305に送信する。
実施の形態3に係るアーム制御部305は、押付け力演算部304が算出した押付け力と、指令値演算部303が算出した押付け力指令値と、に基づいて、アーム側指令値を算出する。言い換えると、実施の形態3に係るアーム制御部305は、ツール回転数演算部302により推定された加工ツール1の回転数に基づいて、ロボットアーム200による押付け力を制御している。例えば、アーム制御部305は、加工作業中に加工ツール1の回転数が所定のしきい値以下になった場合に、加工ツール1側に過負荷がかかっていると判断し、押付け力が小さくなるようにアーム駆動部201がロボットアーム200を移動させるためのアーム側指令値を算出して、アーム駆動部201に送信する。これにより、加工ツール1の回転数が低下して加工品質又は信頼性が低下するのを抑制可能となる。
次に、実施の形態3に係る加工ロボット制御装置3Cの動作例について、図10を参照しながら説明する。図10は、実施の形態3に係る加工ロボット制御装置3Cの動作例を示すフローチャートである。なお、力覚センサ202は、ロボットアーム200にかかる外力を検知し、当該外力を示すデータを加工ロボット制御装置3Cに送信している。
図10に示すように、実施の形態3に係る加工ロボット制御装置3Cの動作例では、押付け力演算部304が押付け力を算出すると(ステップST3)、指令値演算部303は、ツール側指令値をツール駆動部101へ送信してツール駆動部101を制御する(ステップST11)と共に、アーム制御部305に押付け力指令値を送信する。なお、指令値演算部303は、加工ツール1の推定回転数に応じた押付け力指令値を算出するための関数を用いてもよい。
アーム制御部305は、押付け力演算部304が算出した押付け力と、加工ツール1の推定回転数に基づいて指令値演算部303が算出した押付け力指令値と、に基づいて、アーム駆動部201を制御するためのアーム側指令値を算出してアーム駆動部201へ送信し、アーム駆動部201を制御する(ステップST13)。なお、アーム制御部305は、押付け力演算部304が算出した押付け力と、指令値演算部303が算出した押付け力指令値と、に基づいて、アーム駆動部201を制御するためのアーム側指令値を算出するものに限定されない。アーム制御部305は、押付け力演算部304が算出した押付け力と、加工ツール1の推定回転数に基づく指令値と、に基づいて、アーム駆動部201を制御するためのアーム側指令値を算出すればよく、例えば、指令値演算部303は、アーム制御部305にツール側指令値を送信し、アーム制御部305は、押付け力演算部304が算出した押付け力と、指令値演算部303が算出したツール指令値と、に基づいてアーム側指令値を算出してもよい。具体的には、アーム制御部305は、受信したツール側指令値が加工ツール1の回転数を低下させる指令値で、かつ押付け力が上昇するように変化した場合、加工対象物に対する加工ツール1の押付け力を減少させるアーム側指令値を算出してもよい。また、アーム制御部305は、受信したツール側指令値が加工ツール1の回転数を上昇させる指令値で、かつ押付け力が低下するように変化した場合、加工対象物に対する加工ツール1の押付け力を上昇させるアーム側指令値を算出してもよい。
また、指令値演算部303は、ツール回転数演算部302から受信した加工ツール1の推定回転数を示す指令値をアーム制御部305に送信し、アーム制御部305は、押付け力演算部304が算出した押付け力と、加工ツール1の推定回転数を示す指令値と、に基づいてアーム側指令値を算出してもよい。例えば、アーム制御部305は、加工ツール1の推定回転数が設定回転数よりも所定値以上小さく、かつ押付け力が上昇するように変化した場合、加工対象物に対する加工ツール1の押付け力を減少させるアーム側指令値を算出してもよい。また、例えば、アーム制御部305は、加工ツール1の推定回転数値が設定回転数よりも所定値以上大きく、かつ押付け力が低下するように変化した場合、加工対象物に対する加工ツール1の押付け力を上昇させるアーム側指令値を算出してもよい。
このように、実施の形態3に係る加工システム100Cは、加工ツール1の押付け力と回転数とを共に制御することで、加工対象物に対する加工量の制御範囲の拡大が可能となり、加工システムの汎用性を向上させることが可能となる。また、加工ツール1の回転数と押付け力とを共に制御することで、加工作業の信頼性及び加工品質の向上が可能となる。
実施の形態4.
次に、図11乃至図13を参照して、実施の形態4に係る加工システム100Dについて説明する。実施の形態4に係る加工システム100Dは、実施の形態1に係る加工システム100Aに対し、加工ロボット制御装置の構成が異なるが、他の構成については実施の形態1に係る加工システム100Aと同様であり、実施の形態1に係る加工システム100Aと同様の構成については、同一の符号を付して説明を省略する。
次に、図11乃至図13を参照して、実施の形態4に係る加工システム100Dについて説明する。実施の形態4に係る加工システム100Dは、実施の形態1に係る加工システム100Aに対し、加工ロボット制御装置の構成が異なるが、他の構成については実施の形態1に係る加工システム100Aと同様であり、実施の形態1に係る加工システム100Aと同様の構成については、同一の符号を付して説明を省略する。
図11は、実施の形態4に係る加工システム100Dの構成例を示す図であり、図12は、実施の形態4に係る指令値演算部303の構成例を示す図である。加工システム100Dの加工ロボット制御装置3Dは、アーム駆動部201により送信されたロボットアーム200の位置を示すデータと、力覚センサ202により送信されたデータと、に基づいて、加工ツール1のツール駆動部101の制御を行う。この加工ロボット制御装置3Dは、図11に示すように、外力データ取得部301、ツール回転数演算部302、指令値演算部303及び位置演算部306を備えている。
アーム駆動部201は、ロボットアーム200の位置を示すデータを位置演算部306に送信する。例えば、アーム駆動部201は、各関節の角度を検知し、検知結果を示すデータを位置演算部306に送信する。
位置演算部306は、アーム駆動部201から送信されたロボットアーム200の位置を示すデータと、予め加工ロボット制御装置3Dが保持しているロボットアーム200及び加工ツール1の外形から、加工ツール1の位置を算出する。位置演算部306は、算出した加工ツール1の位置を示すデータを指令値演算部303に送信する。なお、位置演算部306は、実施の形態4において、位置算出部を構成する。
図12に示すように、実施の形態4に係る指令値演算部303は、ツール回転数指令値演算部3031と、ツール側指令値演算部3032と、を有している。ツール回転数指令値演算部3031は、位置演算部306が算出した加工ツール1の位置に基づいて加工ツール1の設定回転数を設定し、設定した設定回転数を示す指令値を算出する。ツール側指令値演算部3032は、ツール回転数演算部302から送信された加工ツール1の推定回転数と、ツール回転数指令値演算部3031が設定した設定回転数と、に基づいて、加工ツール1の位置に応じたツール側指令値を算出する。例えば、ツール側指令値演算部3032は、加工ツール1の推定回転数と設定回転数との差分に基づいて、加工ツール1の回転数が加工ツール1の位置に応じた回転数となるようにツール駆動部101を制御するツール側指令値を算出する。
具体的には、指令値演算部303は、予め取得した加工対象物の形状及び位置に関するデータと、加工ツール1の位置を示すデータと、に基づいて、加工対象物の壊れやすい箇所及び凹凸が小さい箇所では、加工ツール1の回転数を低下させるツール側指令値を算出して、加工対象物の破損や削り過ぎを抑制することができる。他にも、加工対象で表面の凹凸が大きい箇所では、回転数指令値を上げることで加工量を大きくすることで、効率的な加工が可能となる。
このように、実施の形態4に係る加工ロボット制御装置3Dは、ロボットアーム200の位置に応じたツール側指令値を算出することで、加工システム100Dの汎用性を向上させ、より多くの加工対象物の加工が可能となる。また、加工ロボット制御装置3Dは、ロボットアーム200の位置に応じたツール側指令値を算出するため、加工対象物に対する加工品質や信頼性を向上させることが可能となる。
次に、実施の形態4に係る加工ロボット制御装置3Dの動作例について、図13を参照しながら説明する。図13は、実施の形態4に係る加工ロボット制御装置3Dの動作例を示すフローチャートである。なお、力覚センサ202は、ロボットアーム200にかかる外力を検知し、当該外力を示すデータを加工ロボット制御装置3Dに送信している。
図13に示すように、実施の形態4に係る加工ロボット制御装置3Dの動作例では、ツール回転数演算部302が、加工ツール1の推定回転数を算出すると(ステップST2)、位置演算部306は、アーム駆動部201からアーム駆動部201は、ロボットアーム200の位置を示すデータを取得する(ステップST4)。位置演算部306は、ロボットアーム200の位置を示すデータを取得すると、取得したデータに基づいて、ロボットアーム200の位置を演算することにより、加工ツール1の位置を算出する(ステップST5)。位置演算部306が加工ツール1の位置を算出すると、指令値演算部303は、加工ツール1の位置と、加工ツール1の推定回転数と、に基づいて、加工ツール1の位置に応じたツール側指令値を算出する(ステップST14)。
実施の形態5.
上述した実施の形態1乃至4では、ツール回転数演算部302が高速フーリエ変換又はスペクトル解析を用いて加工ツール1の回転数を算出する場合を示した。しかしながら、ツール回転数演算部302による算出方法はこれに限らず、別の算出方法を用いてもよい。実施の形態5では、ツール回転数演算部302が、加工ツール1の回転数に対応する周波数を、加工ツール1の回転駆動により生じる振動の上下動回数から算出する場合について説明する。
上述した実施の形態1乃至4では、ツール回転数演算部302が高速フーリエ変換又はスペクトル解析を用いて加工ツール1の回転数を算出する場合を示した。しかしながら、ツール回転数演算部302による算出方法はこれに限らず、別の算出方法を用いてもよい。実施の形態5では、ツール回転数演算部302が、加工ツール1の回転数に対応する周波数を、加工ツール1の回転駆動により生じる振動の上下動回数から算出する場合について説明する。
なお、実施の形態5に係る加工ロボット制御装置の構成例は、ツール回転数演算部302の構成が異なる点以外は、図1に示す実施の形態1に係る加工ロボット制御装置3Aの構成例と同様であるため、ツール回転数演算部302の詳細についてのみ説明を行う。
図14は、実施の形態5におけるツール回転数演算部302aの構成例を示す図である。
実施の形態5におけるツール回転数演算部302aは、図14に示すように、帯域制限部3021及び上下動計数部3022を有している。
実施の形態5におけるツール回転数演算部302aは、図14に示すように、帯域制限部3021及び上下動計数部3022を有している。
帯域制限部3021は、外力データ取得部301により取得されたデータをバンドパスフィルタに通すことで、当該データに対する周波数帯域の制限を行う。このバンドパスフィルタは、加工ツール1の回転数に対応した周波数の周りだけを通過させるように設計される。例えば、加工ツール1の所定回転数が1200[rpm]である場合、それに対応する20[Hz]の周りだけ、すなわち例えば20±10%[Hz]又は20±20%[Hz]の成分だけを通過させるようにする。これにより、帯域制限部3021は、加工ツール1の回転数に対応する周波数成分だけを抽出する。また、帯域制限部3021は、通過させる周波数に幅を持たせることで、加工ツール1の回転数が多少変わっても、後段の上下動計数部3022で検知できるようにする。
そして、帯域制限部3021は、周波数帯域の制限後のデータを、上下動計数部3022に送信する。
そして、帯域制限部3021は、周波数帯域の制限後のデータを、上下動計数部3022に送信する。
上下動計数部3022は、帯域制限部3021による周波数帯域の制限後のデータ(時系列データ)に基づいて、上下動に関するデータを計数することで、その回数から加工ツール1の回転数を算出する。
ここで、帯域制限部3021により送信されたデータは直流成分が除去されている。そのため、上下動計数部3022は、上記データが示す外力がゼロ値を横切る回数を計数することで、加工ツール1の回転数を算出できる。例えば1秒間に40回ゼロ値を横切る場合には、周波数は20[Hz]であり、1200[rpm]に相当すると推定できる(例えば、正弦波は1周期で2回ゼロ値を横切る)。なお、このようにして求められる周波数にバラつきがある場合、上下動計数部3022は、移動平均処理等を行うことで、そのバラつきを抑えてもよい。
又は、上下動計数部3022は、上記データが示す外力がゼロ値を横切る時間間隔を計数することで、加工ツール1の回転数を算出することもできる。例えば、25ミリ秒毎にゼロ値を横切る場合には、時間間隔の逆数である40[Hz]が回転数に対応する周波数の2倍であり、回転数は1200[rpm]と推定できる。
実施の形態5におけるツール回転数演算部302aでは、実施の形態1におけるツール回転数演算部302aでの高速フーリエ変換又はスペクトル解析といった複雑な演算が不要であり、上下動を計数することで回転数を算出しているため、計算コストが小さく、リアルタイム処理に向くという利点がある。
上記の他、ツール回転数演算部302aは、例えば、以下の特許文献2に記載された方法により、加工ツール1の回転駆動により生じる振動の上下動回数に対応する周波数を推定することも可能である。
特開2010-127893号公報
なお、本開示は、各実施の形態の自由な組合せ、或いは各実施の形態の任意の構成要素の変形、若しくは各実施の形態において任意の構成要素の省略が可能である。
1 加工ツール
2 ロボット
3A,3B,3C,3D 加工ロボット制御装置(コントローラ)
100A,100B,100C,100D 加工システム
101 ツール駆動部
102 先端工具
200 ロボットアーム
201 アーム駆動部
202 力覚センサ
202a 手先力センサ
202b トルクセンサ
301 外力データ取得部
302,302a ツール回転数演算部(ツール回転数推定部)
303 指令値演算部(回転制御部)
304 押付け力演算部(押付け力算出部)
305 アーム制御部(力制御部)
306 位置演算部(位置算出部)
3021 帯域制限部
3022 上下動計数部
3031 ツール回転数指令値演算部
3032 ツール側指令値演算部
2 ロボット
3A,3B,3C,3D 加工ロボット制御装置(コントローラ)
100A,100B,100C,100D 加工システム
101 ツール駆動部
102 先端工具
200 ロボットアーム
201 アーム駆動部
202 力覚センサ
202a 手先力センサ
202b トルクセンサ
301 外力データ取得部
302,302a ツール回転数演算部(ツール回転数推定部)
303 指令値演算部(回転制御部)
304 押付け力演算部(押付け力算出部)
305 アーム制御部(力制御部)
306 位置演算部(位置算出部)
3021 帯域制限部
3022 上下動計数部
3031 ツール回転数指令値演算部
3032 ツール側指令値演算部
Claims (10)
- 加工ツールを回転駆動するツール駆動部と、
前記加工ツールを支持するロボットアームと、
前記加工ツールの回転駆動により生じる振動を含む前記ロボットアームにかかる外力を検知可能な力覚センサと、
前記力覚センサにより検知された外力を示すデータを取得する外力データ取得部と、
前記外力データ取得部により取得されたデータに基づいて、前記加工ツールの回転数を推定するツール回転数推定部と、
前記ツール回転数推定部により推定された前記加工ツールの回転数に基づいて、前記ツール駆動部を制御する回転制御部と、を備えた
ことを特徴とする加工システム。 - 前記外力データ取得部により取得されたデータに基づいて、加工対象物に対する前記加工ツールの押付け力を算出する押付け力算出部を備え、
前記回転制御部は、前記ツール回転数推定部により推定された前記加工ツールの回転数及び前記押付け力算出部により算出された前記加工ツールの押付け力に基づいて、前記ツール駆動部を制御する
ことを特徴とする請求項1記載の加工システム。 - 前記押付け力算出部により算出された前記加工ツールの押付け力に基づいて、前記ロボットアームによる押付け力を制御する力制御部を備えた
ことを特徴とする請求項2記載の加工システム。 - 前記ツール回転数推定部により推定された前記加工ツールの回転数に基づいて、前記ロボットアームによる押付け力を制御する力制御部を備えた
ことを特徴とする請求項2記載の加工システム。 - 前記ロボットアームの位置を示すデータを取得し、前記ロボットアームの位置を算出する位置算出部を備え、
前記回転制御部は、前記位置算出部により算出された前記ロボットアームの位置に基づいて、前記ツール駆動部を制御する
ことを特徴とする請求項2記載の加工システム。 - 前記ツール回転数推定部は、前記外力データ取得部により取得されたデータに対する高速フーリエ変換又はスペクトル解析の結果に基づいて、前記加工ツールの回転数を推定する
ことを特徴とする請求項1乃至5のいずれか1項記載の加工システム。 - 前記ツール回転数推定部は、
前記外力データ取得部により取得されたデータに対し、周波数帯域の制限を行う帯域制限部と、
前記帯域制限部による制限後のデータに基づいて、上下動に関するデータを計数することで、前記加工ツールの回転数を推定する上下動計数部と、を有する
ことを特徴とする請求項1乃至5のいずれか1項記載の加工システム。 - 加工ツールを支持するロボットアームにかかる外力であって、前記加工ツールの回転駆動により生じる振動を含む外力を検知可能な力覚センサにより検知された、外力を示すデータを取得する外力データ取得部と、
前記外力データ取得部により取得されたデータに基づいて、前記加工ツールの回転数を推定するツール回転数推定部と、
前記ツール回転数推定部により推定された前記加工ツールの回転数に基づいて、前記加工ツールを回転駆動するツール駆動部を制御する回転制御部と、を備えた
ことを特徴とする加工ロボット制御装置。 - 加工ツールを回転駆動するツール駆動部と、前記加工ツールを支持するロボットアームと、力覚センサと、外力データ取得部と、ツール回転数推定部と、回転制御部と、を備えたシステムが行う加工方法であって、
前記力覚センサが、前記加工ツールの回転駆動により生じる振動を含む前記ロボットアームにかかる外力を検知するステップと、
前記外力データ取得部が、前記力覚センサにより検知された外力を示すデータを取得するステップと、
前記ツール回転数推定部が、前記外力データ取得部により取得されたデータに基づいて、前記加工ツールの回転数を推定するステップと、
前記回転制御部が、前記ツール回転数推定部により推定された前記加工ツールの回転数に基づいて、前記ツール駆動部を制御するステップと、を備えた
ことを特徴とする加工方法。 - 外力データ取得部と、ツール回転数推定部と、回転制御部と、を備えた装置が行う加工方法であって、
前記外力データ取得部が、加工ツールを支持するロボットアームにかかる外力であって、前記加工ツールの回転駆動により生じる振動を含む外力を検知可能な力覚センサにより検知された外力を示すデータを取得するステップと、
前記ツール回転数推定部が、前記外力データ取得部により取得されたデータに基づいて、前記加工ツールの回転数を推定するステップと、
前記回転制御部が、前記ツール回転数推定部により推定された回転数に基づいて、前記加工ツールを回転駆動するツール駆動部を制御するステップと、を備えた
ことを特徴とする加工方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022093419A JP2023180281A (ja) | 2022-06-09 | 2022-06-09 | 加工システム、加工ロボット制御装置及び加工方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022093419A JP2023180281A (ja) | 2022-06-09 | 2022-06-09 | 加工システム、加工ロボット制御装置及び加工方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023180281A true JP2023180281A (ja) | 2023-12-21 |
Family
ID=89306817
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022093419A Pending JP2023180281A (ja) | 2022-06-09 | 2022-06-09 | 加工システム、加工ロボット制御装置及び加工方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2023180281A (ja) |
-
2022
- 2022-06-09 JP JP2022093419A patent/JP2023180281A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4565034B2 (ja) | イナーシャ推定を行う制御装置及び制御システム | |
JP5927259B2 (ja) | 力制御を実行するロボットシステム | |
JP6898079B2 (ja) | 工作機械およびその制御方法 | |
JP6512790B2 (ja) | ロボット制御方法、ロボット装置、プログラム、記録媒体及び物品の製造方法 | |
JP5609739B2 (ja) | 加工びびり振動検出装置、及び工作機械 | |
JP5236596B2 (ja) | 加工ロボットシステム | |
JP2018083284A (ja) | ロボット制御装置、ロボット、ロボットシステム、及び、ロボット制御方法 | |
JP3699458B2 (ja) | 切削抵抗検出方法及び切削抵抗による加工制御方法並びに制御装置 | |
CN205765456U (zh) | 一种带有工业相机的打磨装置 | |
JP6407810B2 (ja) | 加工ツール回転数とワーク送り速度とを調整する加工システム | |
KR20200125928A (ko) | 로봇-보조 연마에 있어서 회전 속도 제어 | |
JP6608153B2 (ja) | サーボプレス、制御方法およびプログラム | |
JP2015030001A (ja) | 研磨システムおよびスポット溶接システム | |
JP7387368B2 (ja) | 工作機械の主軸監視装置及び主軸監視方法 | |
JP2023180281A (ja) | 加工システム、加工ロボット制御装置及び加工方法 | |
CN109202686A (zh) | 机器人研磨系统及研磨控制方法 | |
WO2022075257A1 (ja) | バリ取り制御装置及びバリ取りシステム | |
JP7109318B2 (ja) | 工作機械および工具異常判定方法 | |
JP5906825B2 (ja) | ロボット | |
TWI564110B (zh) | 回授控制數値加工機及其方法 | |
JP2023005332A (ja) | 加工システム、加工ロボット制御装置及び加工方法 | |
JP2009202335A (ja) | 減速機の異常判定装置及び減速機の異常判定方法 | |
JP2012045702A (ja) | 研磨装置 | |
JP2024101574A (ja) | 加工ロボット制御装置、加工システム及び加工ロボット制御方法 | |
CN108942806A (zh) | 手持电动工具及其控制方法、控制装置 |