JP2024029678A - ロボットの制御方法、ロボットの制御プログラムおよびロボットシステム - Google Patents
ロボットの制御方法、ロボットの制御プログラムおよびロボットシステム Download PDFInfo
- Publication number
- JP2024029678A JP2024029678A JP2022132060A JP2022132060A JP2024029678A JP 2024029678 A JP2024029678 A JP 2024029678A JP 2022132060 A JP2022132060 A JP 2022132060A JP 2022132060 A JP2022132060 A JP 2022132060A JP 2024029678 A JP2024029678 A JP 2024029678A
- Authority
- JP
- Japan
- Prior art keywords
- arm
- motor
- correction value
- robot
- torque
- 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
- 238000000034 method Methods 0.000 title claims abstract description 41
- 239000003638 chemical reducing agent Substances 0.000 claims abstract description 56
- 230000003287 optical effect Effects 0.000 description 15
- 238000001514 detection method Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 10
- 230000001133 acceleration Effects 0.000 description 8
- 230000033001 locomotion Effects 0.000 description 6
- 238000005259 measurement Methods 0.000 description 6
- 239000012636 effector Substances 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
Images
Landscapes
- Manipulator (AREA)
Abstract
【課題】優れた位置制御を行うことのできるロボットの制御方法、ロボットの制御プログラムおよびロボットシステムを提供すること。【解決手段】ロボットの制御方法は、アームと、前記アームを回動させるモーターと、前記アームと前記モーターとの間に介在し、前記モーターの回転を減速して前記アームに伝達する減速機と、を備えるロボットの制御方法であって、前記アームの目標位置に基づいて前記減速機に加わるトルクを取得するトルク取得ステップと、前記トルクに基づいて前記モーターと前記減速機との位置ずれを補正する補正値を取得する補正値取得ステップと、前記補正値に基づいて前記目標位置を補正する目標位置補正ステップと、を含む。【選択図】図11
Description
本発明は、ロボットの制御方法、ロボットの制御プログラムおよびロボットシステムに関する。
特許文献1に記載されているロボットシステムは、ロボットと、センサーと、動作制御部および学習制御部を有するロボット制御装置と、を備えている。ロボットは、六つの関節軸と、関節軸により連結されているアーム部と、各関節軸を駆動するサーボモーターと、を有している。学習制御部は、動作制御部が動作指令によりロボットを動作させたときの当該ロボットに生じる振動を補正するための振動補正量を算出し、算出した振動補正量を次回の動作指令に対して適用する学習制御を行う。
しかしながら、特許文献1のようなロボットシステムにおいては、関節軸の構造上のずれが原因となり、実際に移動したロボットの位置が指令された目標位置からずれる場合がある。
本発明のロボットの制御方法は、アームと、前記アームを回動させるモーターと、前記アームと前記モーターとの間に介在し、前記モーターの回転を減速して前記アームに伝達する減速機と、を備えるロボットの制御方法であって、
前記アームの目標位置に基づいて前記減速機に加わるトルクを取得するトルク取得ステップと、
前記トルクに基づいて前記モーターと前記減速機との位置ずれを補正する補正値を取得する補正値取得ステップと、
前記補正値に基づいて前記目標位置を補正する目標位置補正ステップと、を含む。
前記アームの目標位置に基づいて前記減速機に加わるトルクを取得するトルク取得ステップと、
前記トルクに基づいて前記モーターと前記減速機との位置ずれを補正する補正値を取得する補正値取得ステップと、
前記補正値に基づいて前記目標位置を補正する目標位置補正ステップと、を含む。
本発明のロボットの制御プログラムは、アームと、前記アームを回動させるモーターと、前記アームと前記モーターとの間に介在し、前記モーターの回転を減速して前記アームに伝達する減速機と、を備えるロボットの制御プログラムであって、
前記アームの目標位置に基づいて前記減速機に加わるトルクを取得し、前記トルクに基づいて前記モーターと前記減速機との位置ずれを補正する補正値を取得し、前記補正値に基づいて前記目標位置を補正する。
前記アームの目標位置に基づいて前記減速機に加わるトルクを取得し、前記トルクに基づいて前記モーターと前記減速機との位置ずれを補正する補正値を取得し、前記補正値に基づいて前記目標位置を補正する。
本発明のロボットシステムは、アームと、前記アームを回動させるモーターと、前記アームと前記モーターとの間に介在し、前記モーターの回転を減速して前記アームに伝達する減速機と、を備えるロボットと、
前記モーターの駆動を制御する制御装置と、を有し、
前記制御装置は、前記アームの目標位置に基づいて前記減速機に加わるトルクを取得し、前記トルクに基づいて前記モーターと前記減速機との位置ずれを補正する補正値を取得し、前記補正値に基づいて前記目標位置を補正する。
前記モーターの駆動を制御する制御装置と、を有し、
前記制御装置は、前記アームの目標位置に基づいて前記減速機に加わるトルクを取得し、前記トルクに基づいて前記モーターと前記減速機との位置ずれを補正する補正値を取得し、前記補正値に基づいて前記目標位置を補正する。
以下、本発明のロボットの制御方法、ロボットの制御プログラムおよびロボットシステムを添付図面に示す実施形態に基づいて詳細に説明する。
図1は、好適な実施形態に係るロボットシステムの全体図である。図2は、第1関節アクチュエーターの縦断面図である。図3は、第1関節アクチュエーターの上面図である。図4は、位置センサーの出力の一例を示す図である。図5は、従来のモーターの制御方法を示すブロック図である。図6は、減速機に生じる捩じれを示す図である。図7は、本実施形態のモーターの制御方法を示すブロック図である。図8は、位置指令の補正方法を示すフローチャートである。図9は、第1補正値を定めた第1補正テーブルを示す図である。図10は、第2補正値を定めた第2補正テーブルを示す図である。図11は、位置指令の補正方法を示すフローチャートである。なお、図1および図2中の上下方向は、鉛直方向と一致しており、図1および図2中の上側を「上」、下側を「下」とも言う。
図1に示すロボットシステム1は、ロボット2と、ロボット2の駆動を制御する制御装置9と、を有している。
ロボット2は、スカラロボットであり、例えば、電子部品等のワークの保持、搬送、組立および検査等の各作業で用いられる。ただし、ロボット2の用途は、特に限定されない。また、ロボット2は、スカラロボット以外、例えば、6軸多関節ロボット、双腕ロボット等であってもよい。
ロボット2は、ベース21と、ベース21に接続されているロボットアーム22と、を有している。また、ロボットアーム22は、基端部がベース21に接続され、ベース21に対して鉛直方向に沿う第1回動軸J1まわりに回動するアームとしての第1アーム221と、基端部が第1アーム221の先端部に接続され、第1アーム221に対して鉛直方向に沿う第2回動軸J2まわりに回動する第2アーム222と、を有している。
また、第2アーム222の先端部には作業ヘッド23が設けられている。作業ヘッド23は、第2アーム222の先端部に同軸的に配置されているスプラインナット231およびボールネジナット232と、スプラインナット231およびボールネジナット232に挿通されているスプラインシャフト233と、を有している。スプラインシャフト233は、第2アーム222に対して、その中心軸であり鉛直方向に沿う第3回動軸J3まわりに回転可能で、かつ、第3回動軸J3に沿って昇降可能である。
また、スプラインシャフト233の下端部には、エンドエフェクター24が装着されている。エンドエフェクター24は、着脱自在であり目的の作業に適したものが適宜選択される。
また、ロボット2は、ベース21と第1アーム221とを連結し、ベース21に対して第1アーム221を第1回動軸J1まわりに回動させる第1関節アクチュエーター251と、第1アーム221と第2アーム222とを連結し、第1アーム221に対して第2アーム222を第2回動軸J2まわりに回動させる第2関節アクチュエーター252と、を有している。
また、ロボット2は、スプラインナット231を回転させてスプラインシャフト233を第3回動軸J3まわりに回転させる第1駆動機構253と、ボールネジナット232を回転させてスプラインシャフト233を第3回動軸J3に沿った方向に昇降させる第2駆動機構254と、を有している。
次に、第1関節アクチュエーター251について説明する。第1関節アクチュエーター251は、ベース21内に収容されている。図2に示すように、第1関節アクチュエーター251は、ベース21と第1アーム221とを連結している減速機3と、モーター4と、モーター4に接続されているエンコーダー5と、減速機3に接続されている位置センサー6と、を有している。
モーター4は、ベース21に固定されている。また、モーター4は、例えば、ACサーボモーターである。ただし、モーター4としては、特に限定されず、例えば、DCサーボモーター、ステッピングモーター等を用いてもよい。このようなモーター4は、出力軸であるシャフト41と、シャフト41を回転させる図示しないステーターと、これらを収容するハウジング43と、を有している。
エンコーダー5は、第1回動軸J1に沿ってモーター4と並んで配置され、モーター4の下側に位置している。エンコーダー5は、シャフト41に固定された光学スケール51と、光学スケール51の回転状態を検出する光学センサー52と、を有している。
光学スケール51は、シャフト41と共に第1回動軸J1まわりに回転する。また、光学スケール51の下面には、光学スケール51の回転角度を検出し得る図示しない検出用パターンが形成されている。一方、光学センサー52は、光学スケール51上の検出用パターンに向けて光を出射する発光素子521と、検出用パターンで反射した光を受光する受光素子522と、を有している。このような構成のエンコーダー5では、光学スケール51の第1回動軸J1まわりの回転に伴って受光素子522からの出力信号の波形が変化する。そのため、この出力信号に基づいてモーター4の位置(回転角度)を検出することができる。
ただし、エンコーダー5の構成は、特に限定されない。例えば、本実施形態では、受光素子522が検出用パターンで反射した光を受光する反射型の光学式エンコーダーであるが、受光素子522が検出用パターンを透過した光を受光する透過型の光学式エンコーダーであってもよい。また、検出用パターンをカメラで撮像し、テンプレートパッチングを用いて撮像した画像からモーター4の位置を検出する画像認識型エンコーダーであってもよい。
減速機3は、第1回動軸J1に沿ってモーター4と並んで配置され、モーター4の上側に位置している。減速機3は、シャフト41の回転を高い減速比で減速して出力し、減速比に比例した高いトルクを発生させる。
減速機3は、波動歯車装置である。このような減速機3は、ウェーブジェネレーター31と、フレックスプライン33と、サーキュラスプライン36と、カバー部材39と、を有している。減速機3では、ウェーブジェネレーター31がモーター4の動力が入力される入力側となり、サーキュラスプライン36がモーター4の動力を減速して出力する出力側となる。
サーキュラスプライン36は、実質的に撓まない剛体で構成された環状の内歯歯車である。また、サーキュラスプライン36は、ベース21に固定されている内側主軸受け361と、内側主軸受け361の外側に位置し、カバー部材39を介して第1アーム221に固定されている外側主軸受け362と、を有している。また、内側主軸受け361と外側主軸受け362とは、ベアリング363により連結され、外側主軸受け362と内側主軸受け361とが回転可能となっている。また、内側主軸受け361の内周部にはフレックスプライン33と噛合する内歯361bが形成されている。
フレックスプライン33は、サーキュラスプライン36の内側に配置されている。フレックスプライン33は、ウェーブジェネレーター31の外周に沿って撓み変形可能な可撓性を有する筒状部331と、筒状部331の上端部に接続された環状のフランジ部332と、を有している。筒状部331の外周部には、サーキュラスプライン36の内歯361bと噛合する外歯331aが形成されている。外歯331aの歯数は、内歯361bの歯数よりも少なく設定されている。フランジ部332は、外側主軸受け362と共にカバー部材39に固定されている。
また、ウェーブジェネレーター31は、シャフト41に固定され、シャフト41の回転に連動して回転する波動発生部311と、波動発生部311とフレックスプライン33との間に嵌め込まれたベアリング312と、を有している。波動発生部311は、第1回動軸J1に沿う方向からの平面視で外周が楕円形または長円形である。つまり、ウェーブジェネレーター31は、長手方向と、それに直交する短手方向と、を有する形状である。
ウェーブジェネレーター31は、フレックスプライン33の筒状部331の内周面に接し、筒状部331を楕円形または長円形に撓めて筒状部331の外歯331aをサーキュラスプライン36の内歯361bに部分的に噛合させる。これにより、長軸の部分でサーキュラスプライン36と歯が噛み合い、短軸の部分では歯が完全に離れた状態となる。
ウェーブジェネレーター31にモーター4からの駆動力が入力されると、フレックスプライン33およびサーキュラスプライン36は、互いの噛み合い位置が周方向に順次移動しながら、歯数差に起因して第1回動軸J1まわりに相対的に回転する。本実施形態では、フレックスプライン33と外側主軸受け362とがカバー部材39を介して第1アーム221に固定され、内側主軸受け361がベース21に固定されているため、第1アーム221がベース21に対して第1回動軸J1まわりに回動する。
このような減速機3によれば、モーター4からウェーブジェネレーター31に入力された回転が減速されてサーキュラスプライン36の外側主軸受け362から出力され、出力側において減速比に比例したトルクを得ることができる。
以上、減速機3について説明したが、減速機3としては、特に限定されず、例えば、サイクロ減速機(登録商標)、遊星歯車減速機等であってもよい。
位置センサー6は、減速機3の出力側に配置されており、減速機3の原点O3を検出するのに用いられる。本実施形態の位置センサー6は、透過型の光センサーである。図2および図3に示すように、位置センサー6は、カバー部材39に固定されカバー部材39と共に第1回動軸J1まわりに回動する半円状の検出回転板61と、ベース21に固定されているPI(フォトインタラプタ)センサー62と、を有している。
PIセンサー62は、検出回転板61を介して上下に対向配置された発光素子621と受光素子622を有し、発光素子621から出射した光を受光素子622が受光することにより信号を出力するセンサーである。このような位置センサー6では、発光素子621と受光素子622との間を半円状の検出回転板61が通過することにより、受光素子622の受光のON/OFFが切り替わり、図4に示すように、それに伴って出力信号がHigh/Lowで変化する。なお、以下では、主力信号がLowからHighに切り替わる位置を減速機3の原点O3(0°)とする。ただし、原点O3の設定方法は、特に限定されない。
以上、位置センサー6について説明したが、位置センサー6としては、減速機3の原点O3を検出することができれば、特に限定されない。例えば、光反射型の光センサーを用いてもよい。この場合、PIセンサー62に代えてフォトリフレクタセンサーを用い、検出回転板61で反射した光を受光素子が受光する構成としてもよい。
制御装置9は、ロボット2の駆動を制御する。具体的には、制御装置9は、第1関節アクチュエーター251、第2関節アクチュエーター252、第1駆動機構253および第2駆動機構254の駆動をそれぞれ独立して制御する。このような制御装置9は、例えば、コンピューターから構成され、情報を処理するプロセッサー(CPU)と、プロセッサーに通信可能に接続されたメモリーと、外部装置との接続を行う外部インターフェースと、を有している。メモリーにはプロセッサーにより実行可能な各種プログラムが保存され、プロセッサーは、メモリーに記憶されたプログラムを読み込んで実行することができる。
特に、本実施形態では、メモリーにロボット2の制御プログラムPPが保存されており、この制御プログラムPPをプロセッサーが実行することにより、後述するロボット2の制御が実現される。
次に、図5に基づいて、従来から用いられている第1関節アクチュエーター251の制御回路8と、その問題点について簡単に説明する。同図に示すように、制御回路8は、位置指令生成部81と、位置制御部82と、速度制御部83と、電流制御部84と、を有している。
位置指令生成部81は、モーター4の位置指令P0を制御周期間隔毎に生成する。位置指令P0は、第1アーム221の目標位置を示す指令である。位置制御部82は、位置指令生成部81が生成した位置指令P0とエンコーダー5が検出したモーター4の位置(回転角度)とを一致させるように速度指令V0を生成する。速度制御部83は、エンコーダー5で検出したモーター4の位置から求めた速度を速度指令V0に一致させるように加速度指令A0を生成する。電流制御部84は、加速度指令A0に基づいて電流指令E0を生成する。そして、電流制御部84で生成された電流指令E0がモーター4に印加され、モーター4が駆動する。
このようなフィードバック制御によれば、モーター4を位置指令P0に沿って動かすことができ、第1アーム221が目標位置となると考えられる。しかしながら、モーター4と第1アーム221との間には減速機3が介在しており、減速機3が有するバックラッシ(ロストモーション)、減速機3の入力側と出力側との間に生じる捩じれ等の影響により、モーター4の位置が位置指令P0と一致しても、第1アーム221の位置が目標位置からずれる場合がある。
以下、この理由について簡単に説明する。図6は、減速機3に生じる捩じれを示すグラフである。同図に示すように、減速機3では、トルクによって入力側であるウェーブジェネレーター31と出力側である外側主軸受け362との間に捩じれが生じる。この捩じれが、モーター4を位置指令P0に沿って駆動させても第1アーム221が目標位置に一致しない1つの原因となる。つまり、捩じれ分だけ、第1アーム221が目標位置からずれる。また、減速機3に加わるトルクの大きさによって減速機3の捩じれの大きさが変化する特性を有している。また、減速機3の回転方向(CW/CCW)によっても捩じれの大きさが異なる特性を有している。
ここで、一方向位置繰り返し精度について述べる。この「一方向位置繰り返し精度」とは、所定の目標位置に対して同じ方向から複数回の位置決めを行った場合の位置決め精度を意味する。なお、一方向位置繰り返し精度の計測方法は、特に限定されないが、本実施形態では、次のようにして測定した。
まず、任意の2点を予め決めておき、エンコーダー5の出力に基づいてモーター4を駆動し、第1アーム221を一方の点から他方の点に移動させ、当該位置で停止する。そして、停止時の減速機3の位置を記録する。なお、減速機3の位置は、原点からの回転角度を意味し、例えば、外側主軸受け362に接続したエンコーダーにより検出することができる。以上の工程を複数回繰り返す。そして、複数回分の計測値の最大値と最小値との差を、その計測点の一方向位置繰り返し精度として記録する。さらに、以上の工程を1サイクルとし、このサイクルを計測点を変化させて行った。また、以上の計測を、第1アーム221に負荷が掛かっている場合と負荷が掛かっていない場合の2パターン行った。
この結果、減速機3の位置によって一方向位置繰り返し精度が変動していることが分かった。この変動は、内側主軸受け361の内周部に形成されている内歯361bの数が関係していると推測される。また、一方向位置繰り返し精度は、減速機3に加わるトルクの大小によっても異なることが分かった。具体的には、第1アーム221に負荷が掛かっている場合の方が、負荷が掛かっていない場合よりも一方向位置繰り返し精度が高いことがわかった。
以上、減速機3のバックラッシ、捩じれ等の影響により、モーター4の位置が位置指令と一致しても、第1アーム221の位置が目標位置からずれる理由について簡単に説明した。
そこで、ロボットシステム1では、減速機3のバックラッシや捩じれに起因したずれを補正する補正値Gを取得し、取得した補正値Gに基づいて位置指令P0を補正する。これにより、第1アーム221の目標位置からずれを抑制することができ、好ましくは、目標位置に一致させることができる。以下、詳細に説明する。
図7に示すように、制御装置9は、第1関節アクチュエーター251の駆動を制御する制御回路91を有している。また、制御回路91は、モーター4の位置指令P0を制御周期間隔毎に生成する位置指令生成部910と、位置指令P0を補正して補正位置指令P0’を生成する位置指令補正部911と、位置指令補正部911で生成された補正位置指令P0’に基づいてモーター4への速度指令V0を生成する位置制御部912と、位置制御部912からの速度指令V0に基づいてモーター4への加速度指令A0を生成する速度制御部913と、速度制御部913からの加速度指令A0に基づいてモーター4への電流指令E0を生成する電流制御部914と、を有している。
位置指令生成部910は、モーター4の位置指令P0を制御周期間隔毎に生成する。位置指令P0は、第1アーム221の目標位置を示す指令である。
位置指令補正部911は、位置指令生成部910で生成された位置指令P0を補正して補正位置指令P0’を生成する。以下、位置指令補正部911による位置指令P0の補正方法について詳細に説明する。
図8に示すように、位置指令P0の補正方法は、モーター4と減速機3の原点を合わせるキャリブレーションステップS1と、位置指令P0に基づいて減速機3に加わるトルクT1を取得するトルク取得ステップS2と、位置指令P0に基づいて減速機3の回転方向T2を取得する回転方向取得ステップS3と、位置指令P0に基づいて減速機3の回転角度T3を取得する回転角度取得ステップS4と、ステップS1~S4で得られたトルクT1、回転方向T2および回転角度T3に基づいて補正値Gを取得する補正値取得ステップS5と、補正値Gに基づいて位置指令P0を補正して補正位置指令P0’を生成する目標位置補正ステップS6と、を含んでいる。
まず、目標位置補正ステップS6で用いられる補正値Gについて説明する。補正値Gは、第1補正値G1および第2補正値G2を有している。また、これら第1補正値G1および第2補正値G2は、事前に準備されている。
第1補正値G1は、減速機3に加わるトルクおよび減速機3の回転方向に依存して生じる第1アーム221の位置ずれをキャンセルする補正値である。前述したように、減速機3では、減速機3に加わるトルクや減速機3の回転方向によって一方向位置繰り返し精度が変化する。そこで、図9に示すように、正回転CWおよび逆回転CCWのそれぞれについて、減速機3に加わるトルクの大きさ毎に第1アーム221の目標位置からのずれをキャンセルする第1補正値G1を定め、これを第1補正テーブルTB1として制御装置9に記憶させている。なお、前記「キャンセルする」とは、ずれを小さくすること、好ましくは、ずれをゼロにすることを意味する。
なお、本実施形態では、100%つまり減速機3の最大許容トルクと等しいトルクを加えた状態でのみ実際に測定し、他の大きさのトルクについては、比例関係にあると仮定して計算で求めている。ただし、これに限定されず、全ての大きさのトルクについて実際に測定してもよいし、いくつかのトルクについて実際に測定し、間を計算にて補間してもよい。また、第1補正テーブルTB1では、トルクの大きさを10%毎に区切っているが、これに限定されず、さらに小さく区切ってもよいし、さらに大きく区切ってもよい。
第2補正値G2は、減速機3の位置に依存して生じる第1アーム221の位置ずれをキャンセルする補正値である。前述したように、減速機3では、減速機3の位置つまり原点からの回転角度によって一方向位置繰り返し精度が変化する。そこで、図10に示すように、減速機3の位置毎に第1アーム221の目標位置からのずれをキャンセルする第2補正値G2を定め、これを第2補正テーブルTB2として制御装置9に記憶させている。
なお、本実施形態では、減速機3の位置を1°毎に区切っているが、これに限定されず、さらに小さく区切ってもよいし、さらに大きく区切ってもよい。
[キャリブレーションステップS1]
図11に示すように、まず、位置指令補正部911は、ステップS11として、モーター4の原点と減速機3の原点とにずれがあるかを確認する。ずれがない場合、位置指令補正部911は、トルク取得ステップS2に移行する。一方、ずれがある場合、位置指令補正部911は、ステップS12として、エンコーダー5の出力から検出されるモーター4の原点と、位置センサー6の出力から検出される減速機3の原点とのずれ量Δを検出する。次に、位置指令補正部911は、ステップS13として、検出したずれ量Δに基づいてモーター4の原点と減速機3の原点とを一致させるキャリブレーションを行う。これにより、目標位置補正ステップS6での位置指令P0の補正をより精度よく行うことができる。
図11に示すように、まず、位置指令補正部911は、ステップS11として、モーター4の原点と減速機3の原点とにずれがあるかを確認する。ずれがない場合、位置指令補正部911は、トルク取得ステップS2に移行する。一方、ずれがある場合、位置指令補正部911は、ステップS12として、エンコーダー5の出力から検出されるモーター4の原点と、位置センサー6の出力から検出される減速機3の原点とのずれ量Δを検出する。次に、位置指令補正部911は、ステップS13として、検出したずれ量Δに基づいてモーター4の原点と減速機3の原点とを一致させるキャリブレーションを行う。これにより、目標位置補正ステップS6での位置指令P0の補正をより精度よく行うことができる。
[トルク取得ステップS2]
トルク取得ステップS2では、位置指令補正部911は、位置指令P0に基づいて減速機3に加わるトルクT1を取得する。本実施形態では、制御装置9は、予め決められた加速度、最高速度および減速度によりロボット2の駆動を制御する。そのため、これら駆動条件に基づいて、位置指令P0に沿う移動中に減速機3に加わるトルクT1を算出することができる。なお、トルクT1は、目標位置までの移動中に加わる最大トルクを意味している。また、トルクT1の取得方法は、特に限定されない。
トルク取得ステップS2では、位置指令補正部911は、位置指令P0に基づいて減速機3に加わるトルクT1を取得する。本実施形態では、制御装置9は、予め決められた加速度、最高速度および減速度によりロボット2の駆動を制御する。そのため、これら駆動条件に基づいて、位置指令P0に沿う移動中に減速機3に加わるトルクT1を算出することができる。なお、トルクT1は、目標位置までの移動中に加わる最大トルクを意味している。また、トルクT1の取得方法は、特に限定されない。
[回転方向取得ステップS3]
回転方向取得ステップS3では、位置指令補正部911は、位置指令P0に基づいて回転方向T2を取得する。つまり、目標位置に向けて減速機3をCW方向に回転させるのか、反対に、CCW方向に回転させるのかを判断する。
回転方向取得ステップS3では、位置指令補正部911は、位置指令P0に基づいて回転方向T2を取得する。つまり、目標位置に向けて減速機3をCW方向に回転させるのか、反対に、CCW方向に回転させるのかを判断する。
[回転角度取得ステップS4]
回転角度取得ステップS4では、位置指令補正部911は、位置指令P0に基づいて減速機3の回転角度T3を取得する。具体的には、位置指令補正部911は、まず、位置指令P0に基づいてモーター4の回転量を算出する。次に、位置指令補正部911は、算出したモーター4の回転量と、減速機3の減速比と、に基づいて減速機3の回転量を算出する。次に、位置指令補正部911は、算出した回転量に基づいて位置指令P0に沿う駆動が終了するときの減速機3の位置つまり原点からの回転角度T3を算出する。
回転角度取得ステップS4では、位置指令補正部911は、位置指令P0に基づいて減速機3の回転角度T3を取得する。具体的には、位置指令補正部911は、まず、位置指令P0に基づいてモーター4の回転量を算出する。次に、位置指令補正部911は、算出したモーター4の回転量と、減速機3の減速比と、に基づいて減速機3の回転量を算出する。次に、位置指令補正部911は、算出した回転量に基づいて位置指令P0に沿う駆動が終了するときの減速機3の位置つまり原点からの回転角度T3を算出する。
[補正値取得ステップS5]
補正値取得ステップS5では、位置指令補正部911は、ステップS51として、第1補正テーブルTB1からトルク取得ステップS2で取得したトルクT1および回転方向取得ステップS3で取得した回転方向T2に対応する第1補正値G1を取得する。次に、位置指令補正部911は、ステップS52として、第2補正テーブルTB2から回転角度取得ステップS4で取得した回転角度T3に対応する第2補正値G2を取得する。
補正値取得ステップS5では、位置指令補正部911は、ステップS51として、第1補正テーブルTB1からトルク取得ステップS2で取得したトルクT1および回転方向取得ステップS3で取得した回転方向T2に対応する第1補正値G1を取得する。次に、位置指令補正部911は、ステップS52として、第2補正テーブルTB2から回転角度取得ステップS4で取得した回転角度T3に対応する第2補正値G2を取得する。
[目標位置補正ステップS6]
目標位置補正ステップS6では、位置指令補正部911は、補正値取得ステップS5で取得した第1補正値G1および第2補正値G2に基づいて位置指令P0を補正し、補正位置指令P0’を生成する。これにより、減速機3のバックラッシや捩じれに起因する第1アーム221の位置ずれがキャンセルされた補正位置指令P0’が得られる。
目標位置補正ステップS6では、位置指令補正部911は、補正値取得ステップS5で取得した第1補正値G1および第2補正値G2に基づいて位置指令P0を補正し、補正位置指令P0’を生成する。これにより、減速機3のバックラッシや捩じれに起因する第1アーム221の位置ずれがキャンセルされた補正位置指令P0’が得られる。
以上、位置指令補正部911による位置指令P0の補正方法について説明した。このように、本実施形態では、トルクT1だけではなく、回転方向T2および回転角度T3を用いて補正値Gを取得している。そのため、より精度よく、第1アーム221の目標位置からのずれをキャンセルすることができる。ただし、これに限定されず、補正値Gは、少なくともトルクT1を用いて取得すればよい。
また、例えば、本実施形態では、一番初めにキャリブレーションステップS1を行っているが、当該ステップS1は、目標位置補正ステップS6より先であれば、その順番は特に限定されない。また、本実施形態では、第1補正値G1および第2補正値G2を取得した後の目標位置補正ステップS6において位置指令P0を第1補正値G1および第2補正値G2で補正しているが、これに限定されず、例えば、回転方向取得ステップS3と回転角度取得ステップS4との間に位置指令P0を第1補正値G1で補正し、回転角度取得ステップS4の後に、第1補正値G1で補正した位置指令P0をさらに第2補正値G2で補正することにより補正位置指令P0’を生成してもよい。
位置制御部912は、補正位置指令P0’に、エンコーダー5からの出力つまりモーター4の実位置P1をフィードバックする。そして、位置制御部912は、補正位置指令P0’と実位置P1との差分に基づいて、つまり、実位置P1が位置指令P0と一致するように速度指令V0を生成する。
速度制御部913は、速度指令V0に、エンコーダー5の出力を微分して得られたモーター4の実速度V1をフィードバックする。そして、速度制御部913は、速度指令V0と実速度V1との差分に基づいて、つまり、実速度V1が速度指令V0と一致するように加速度指令A0を生成する。
電流制御部914は、加速度指令A0に基づいて電流指令E0を生成する。そして、電流制御部914で生成された電流指令E0がモーター4に印加され、モーター4が駆動する。
以上のような制御方法によれば、減速機3に起因して生じる第1アーム221の目標位置からのずれを効果的にキャンセルすることができる。そのため、位置精度、特に、一方向位置繰り返し精度が向上する。また、位置制御や速度制御中で第1アーム221のずれをキャンセルするのではなく、位置制御の元となる位置指令P0自体を補正するため、補正方法がよりシンプルとなり、容易となる。また、補正値Gを予めテーブルとして記憶しているため、補正値Gの取得や、取得した補正値Gを用いた位置指令P0の補正が容易となる。
以上、ロボットシステム1について説明した。このようなロボットシステム1に適用されているロボット2の制御方法は、前述したように、アームとしての第1アーム221と、第1アーム221を回動させるモーター4と、第1アーム221とモーター4との間に介在し、モーター4の回転を減速して第1アーム221に伝達する減速機3と、を備えるロボット2の制御方法であって、第1アーム221の目標位置である位置指令P0に基づいて減速機3に加わるトルクT1を取得するトルク取得ステップS2と、トルクT1に基づいてモーター4と減速機3との位置ずれを補正する補正値Gを取得する補正値取得ステップS5と、補正値Gに基づいて位置指令P0を補正する目標位置補正ステップS6と、を含む。このような制御方法によれば、減速機3に起因して生じる第1アーム221の目標位置からのずれを効果的にキャンセルすることができる。そのため、優れた位置精度を発揮することができる。
また、前述したように、ロボット2の制御方法は、第1アーム221を目標位置に移動させる際の減速機3の回転方向T2を取得する回転方向取得ステップS3を含み、補正値取得ステップS5では、トルクT1および回転方向T2に基づいて補正値Gを取得する。このような制御方法によれば、減速機3に起因して生じる第1アーム221の目標位置からのずれをより効果的にキャンセルすることができる。
また、前述したように、ロボット2の制御方法は、第1アーム221を目標位置に移動させる際の減速機3の回転角度T3を取得する回転角度取得ステップS4を含み、補正値取得ステップS5では、トルクT1および回転角度T3に基づいて補正値Gを取得する。このような制御方法によれば、減速機3に起因して生じる第1アーム221の目標位置からのずれをより効果的にキャンセルすることができる。
また、前述したように、ロボット2の制御方法は、目標位置補正ステップS6に先立って行われ、モーター4と減速機3との位置合わせを行うキャリブレーションステップS1を含む。これにより、目標位置補正ステップS6での位置指令P0の補正をより精度よく行うことができる。
また、前述したように、ロボットシステム1に適用されているロボット2の制御プログラムPPは、アームとしての第1アーム221と、第1アーム221を回動させるモーター4と、第1アーム221とモーター4との間に介在し、モーター4の回転を減速して第1アーム221に伝達する減速機3と、を備えるロボット2の制御プログラムであって、第1アーム221の目標位置である位置指令P0に基づいて減速機3に加わるトルクT1を取得し、トルクT1に基づいてモーター4と減速機3との位置ずれを補正する補正値Gを取得し、補正値Gに基づいて位置指令P0を補正する。このような制御プログラムPPによれば、減速機3に起因して生じる第1アーム221の目標位置からのずれを効果的にキャンセルすることができる。そのため、優れた位置精度を発揮することができる。
また、前述したように、ロボットシステム1は、アームとしての第1アーム221と、第1アーム221を回動させるモーター4と、第1アーム221とモーター4との間に介在し、モーター4の回転を減速して第1アーム221に伝達する減速機3と、を備えるロボット2と、モーター4の駆動を制御する制御装置9と、を有している。また、制御装置9は、第1アーム221の目標位置である位置指令P0に基づいて減速機3に加わるトルクT1を取得し、トルクT1に基づいてモーター4と減速機3との位置ずれを補正する補正値Gを取得し、補正値Gに基づいて位置指令P0を補正する。このような構成によれば、減速機3に起因して生じる第1アーム221の目標位置からのずれを効果的にキャンセルすることができる。そのため、優れた位置精度を発揮することができる。
以上、本発明のロボットの制御方法、ロボットの制御プログラムおよびロボットシステムを図示の実施形態に基づいて説明したが、本発明は、これに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、本発明に、他の任意の構成物が付加されていてもよい。
また、前述した実施形態では、第1関節アクチュエーター251について本発明のロボットの制御方法を適用したが、これに限定されず、第2関節アクチュエーター252に本発明のロボットの制御方法を適用してもよい。
1…ロボットシステム、2…ロボット、21…ベース、22…ロボットアーム、221…第1アーム、222…第2アーム、23…作業ヘッド、231…スプラインナット、232…ボールネジナット、233…スプラインシャフト、24…エンドエフェクター、251…第1関節アクチュエーター、252…第2関節アクチュエーター、253…第1駆動機構、254…第2駆動機構、3…減速機、31…ウェーブジェネレーター、311…波動発生部、312…ベアリング、33…フレックスプライン、331…筒状部、331a…外歯、332…フランジ部、36…サーキュラスプライン、361…内側主軸受け、361b…内歯、362…外側主軸受け、363…ベアリング、39…カバー部材、4…モーター、41…シャフト、43…ハウジング、5…エンコーダー、51…光学スケール、52…光学センサー、521…発光素子、522…受光素子、6…位置センサー、61…検出回転板、62…PIセンサー、621…発光素子、622…受光素子、8…制御回路、81…位置指令生成部、82…位置制御部、83…速度制御部、84…電流制御部、9…制御装置、91…制御回路、910…位置指令生成部、911…位置指令補正部、912…位置制御部、913…速度制御部、914…電流制御部、A0…加速度指令、CCW…逆回転、CW…正回転、E0…電流指令、G1…第1補正値、G2…第2補正値、J1…第1回動軸、J2…第2回動軸、J3…第3回動軸、O3…原点、P0…位置指令、P0’…補正位置指令、P1…実位置、PP…制御プログラム、S1…キャリブレーションステップ、S11…ステップ、S12…ステップ、S13…ステップ、S2…トルク取得ステップ、S3…回転方向取得ステップ、S4…回転角度取得ステップ、S5…補正値取得ステップ、S51…ステップ、S52…ステップ、S6…目標位置補正ステップ、T1…トルク、T2…回転方向、T3…回転角度、TB1…第1補正テーブル、TB2…第2補正テーブル、V0…速度指令、V1…実速度、Δ…ずれ量
Claims (6)
- アームと、前記アームを回動させるモーターと、前記アームと前記モーターとの間に介在し、前記モーターの回転を減速して前記アームに伝達する減速機と、を備えるロボットの制御方法であって、
前記アームの目標位置に基づいて前記減速機に加わるトルクを取得するトルク取得ステップと、
前記トルクに基づいて前記モーターと前記減速機との位置ずれを補正する補正値を取得する補正値取得ステップと、
前記補正値に基づいて前記目標位置を補正する目標位置補正ステップと、を含むことを特徴とするロボットの制御方法。 - 前記アームを前記目標位置に移動させる際の前記減速機の回転方向を取得する回転方向取得ステップを含み、
前記補正値取得ステップでは、前記トルクおよび前記回転方向に基づいて前記補正値を取得する請求項1に記載のロボットの制御方法。 - 前記アームを前記目標位置に移動させる際の前記減速機の回転角度を取得する回転角度取得ステップを含み、
前記補正値取得ステップでは、前記トルクおよび前記回転角度に基づいて前記補正値を取得する請求項1に記載のロボットの制御方法。 - 前記目標位置補正ステップに先立って行われ、前記モーターと前記減速機との位置合わせを行うキャリブレーションステップを含む請求項1に記載のロボットの制御方法。
- アームと、前記アームを回動させるモーターと、前記アームと前記モーターとの間に介在し、前記モーターの回転を減速して前記アームに伝達する減速機と、を備えるロボットの制御プログラムであって、
前記アームの目標位置に基づいて前記減速機に加わるトルクを取得し、前記トルクに基づいて前記モーターと前記減速機との位置ずれを補正する補正値を取得し、前記補正値に基づいて前記目標位置を補正することを特徴とする制御プログラム。 - アームと、前記アームを回動させるモーターと、前記アームと前記モーターとの間に介在し、前記モーターの回転を減速して前記アームに伝達する減速機と、を備えるロボットと、
前記モーターの駆動を制御する制御装置と、を有し、
前記制御装置は、前記アームの目標位置に基づいて前記減速機に加わるトルクを取得し、前記トルクに基づいて前記モーターと前記減速機との位置ずれを補正する補正値を取得し、前記補正値に基づいて前記目標位置を補正することを特徴とするロボットシステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022132060A JP2024029678A (ja) | 2022-08-22 | 2022-08-22 | ロボットの制御方法、ロボットの制御プログラムおよびロボットシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022132060A JP2024029678A (ja) | 2022-08-22 | 2022-08-22 | ロボットの制御方法、ロボットの制御プログラムおよびロボットシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024029678A true JP2024029678A (ja) | 2024-03-06 |
Family
ID=90104720
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022132060A Pending JP2024029678A (ja) | 2022-08-22 | 2022-08-22 | ロボットの制御方法、ロボットの制御プログラムおよびロボットシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2024029678A (ja) |
-
2022
- 2022-08-22 JP JP2022132060A patent/JP2024029678A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5400473B2 (ja) | ロボット装置 | |
JP6504864B2 (ja) | ロボット制御方法、ロボット装置、プログラム、記録媒体及び物品の製造方法 | |
JP6754771B2 (ja) | エンドエフェクタ位置推定を実行するロボット適応型配置システム | |
JP6816495B2 (ja) | ロボットのたわみ補正方法、ロボットの制御装置 | |
US20190009417A1 (en) | Driving mechanism, robot arm, and robot system | |
US11660746B2 (en) | Separate moving and positioning modes for a robot, method providing separate moving and positioning modes for the robot, method of manufacturing a product, and a recording medium | |
US20180066965A1 (en) | Deflection angle detection device | |
JP2019000948A (ja) | 制御装置、ロボット、およびロボットシステム | |
JP2013146827A (ja) | ロボットの制御方法、ロボット | |
JP2010228028A (ja) | ロボットアーム、ロボットアームの接触検知方法、及び、ロボットアームを備えた装置 | |
US6664752B2 (en) | Method and apparatus for correcting actuator positioning error | |
JP6860417B2 (ja) | 減速機角度伝達誤差同定システム及び減速機角度伝達誤差同定方法 | |
JP7254579B2 (ja) | センサ、ロボット、ロボットシステム、ロボットシステムを用いた物品の製造方法、センサの制御方法、構造体、プログラム及び記録媒体 | |
JP6723753B2 (ja) | 変位検出装置、トルク検出装置、ロボット装置、および変位検出方法 | |
US11141855B2 (en) | Robot system, method of controlling robot arm, recording medium, and method of manufacturing an article | |
JP6576824B2 (ja) | ロボット制御装置 | |
JPH07100781A (ja) | 多関節型ロボット | |
US11305425B2 (en) | Angular transmission error identification system, angular transmission error identification method, and robot system | |
JP7152614B2 (ja) | 角度伝達誤差測定装置 | |
JP7267688B2 (ja) | ロボットシステム、ロボットアームの制御方法、物品の製造方法、駆動装置および駆動装置の制御方法 | |
JP2024029678A (ja) | ロボットの制御方法、ロボットの制御プログラムおよびロボットシステム | |
JP2024029677A (ja) | ロボットの制御方法、ロボットの制御プログラムおよびロボットシステム | |
JP2002175120A (ja) | アクチュエータの位置決め誤差補正方法 | |
JP2577713B2 (ja) | ロボツト用制御装置 | |
WO2022163536A1 (ja) | 変位検出センサ、制御装置、及び制御システム |