JP2018202589A - 制御装置、ロボット、およびロボットシステム - Google Patents
制御装置、ロボット、およびロボットシステム Download PDFInfo
- Publication number
- JP2018202589A JP2018202589A JP2017114064A JP2017114064A JP2018202589A JP 2018202589 A JP2018202589 A JP 2018202589A JP 2017114064 A JP2017114064 A JP 2017114064A JP 2017114064 A JP2017114064 A JP 2017114064A JP 2018202589 A JP2018202589 A JP 2018202589A
- Authority
- JP
- Japan
- Prior art keywords
- output
- speed
- control
- unit
- input
- 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
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/161—Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/1653—Programme controls characterised by the control loop parameters identification, estimation, stiffness, accuracy, error analysis
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/06—Control stands, e.g. consoles, switchboards
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J15/00—Gripping heads and other end effectors
- B25J15/02—Gripping heads and other end effectors servo-actuated
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J3/00—Manipulators of master-slave type, i.e. both controlling unit and controlled unit perform corresponding spatial movements
- B25J3/04—Manipulators of master-slave type, i.e. both controlling unit and controlled unit perform corresponding spatial movements involving servo mechanisms
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/10—Programme-controlled manipulators characterised by positioning means for manipulator elements
- B25J9/102—Gears specially adapted therefor, e.g. reduction gears
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/1607—Calculation of inertia, jacobian matrixes and inverses
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Fuzzy Systems (AREA)
- Software Systems (AREA)
- Manipulator (AREA)
Abstract
【課題】伝達部において発生する位置の誤差を考慮して、正確に可動部の制御を行う。【解決手段】制御装置300は、駆動力を発生させる駆動部410によって伝達部510を介して駆動される可動部110aを備えるロボット100を制御する。制御装置300は、伝達部510の入力側の動作位置を検出する入力位置検出部420からの入力検出値Pmと、伝達部510の出力側の動作位置を検出する出力位置検出部520からの出力検出値Proと、を用いて、可動部110aを速度制御する制御部309を備える。【選択図】図6
Description
本発明は、ロボットにおいて動作の精度を高める技術に関する。
従来、ロボットの技術分野において、減速機として、波動歯車減速機が使用されている。波動歯車減速機は、原理的に、角度伝達誤差を含む。特許文献1の技術は、あらかじめ同定しておいた波動歯車減速機の角度伝達誤差の特性に基づいて、その特性の逆位相の位置指令を波動歯車減速機に与えることにより、波動歯車減速機の角度伝達誤差による振動を抑制する。
また、特許文献2の技術においては、アームの先端にジャイロセンサーを設け、ジャイロセンサーによって検出した角度と、モーターの回転角度との差に基づいて、ジャイロセンサーの感度を補正する。その結果、アームの捩れに起因するジャイロセンサーの感度誤差を低減している。
特許文献1の方法においては、波動歯車減速機の角度伝達誤差による振動を抑制するためには、あらかじめ波動歯車減速機の角度伝達誤差の特性を計測する必要がある。しかし、角度伝達誤差の特性は、波動歯車減速機の固体ごとに異なるため、大量生産される波動歯車減速機に上記の方法を適用するためには、多大な負荷を要する。
特許文献2の技術においては、角度伝達誤差の要因の一つである減速機のたわみ(位置の誤差)がアームの位置に与える影響については、考慮されていない。
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態または適用例として実現することが可能である。
(1)本開示の一形態によれば、駆動力を発生させる駆動部によって伝達部を介して駆動される可動部を備えるロボットを制御する制御装置が提供される。この制御装置は:前記伝達部の入力側の動作位置を検出する入力位置検出部からの入力検出値と、前記伝達部の出力側の動作位置を検出する出力位置検出部からの出力検出値と、を用いて、前記可動部を速度制御する制御部を備える。
このような態様とすることにより、入力検出値と出力検出値とに基づいて、伝達部において発生する位置の誤差を考慮して、正確に可動部を速度制御することができる。その結果、出力検出値を用いて速度制御しない態様に比べて、高い速度域までより正確に可動部の位置を制御することができる。また、事前に個別の伝達部の誤差を測定する必要がない。
このような態様とすることにより、入力検出値と出力検出値とに基づいて、伝達部において発生する位置の誤差を考慮して、正確に可動部を速度制御することができる。その結果、出力検出値を用いて速度制御しない態様に比べて、高い速度域までより正確に可動部の位置を制御することができる。また、事前に個別の伝達部の誤差を測定する必要がない。
(2)上記形態の制御装置であって、前記出力位置検出部による前記出力側の動作位置の検出の周期は、前記入力位置検出部による前記入力側の動作位置の検出の周期よりも長く、前記制御部は、前記入力検出値を遅延させることによって得られる遅延入力検出値と、前記出力検出値との差を用いて、前記可動部を速度制御する、態様とすることができる。このような態様とすることにより、出力位置検出部による検出の周期と、入力位置検出部による検出の周期とにずれがある場合にも、伝達部において発生する位置の誤差をより適切に計算して、可動部を安定的に速度制御することができる。
(3)上記形態の制御装置であって、前記制御部は、前記遅延入力検出値と前記出力検出値との差を入力とするローパスフィルターを備え、前記ローパスフィルターの出力を用いて、前記可動部を速度制御する、態様とすることができる。伝達部の特性は、バネ成分を含む場合がある。そのような伝達部の遅延入力検出値と出力検出値との差をそのまま利用して速度制御を行うと、発振が生じてしまう可能性がある。しかし、上記のような態様とし、遅延入力検出値と出力検出値との差における高周波成分をローパスフィルターによって除去することにより、可動部を安定的に速度制御することができる。
(4)上記形態の制御装置であって、前記出力位置検出部は、前記可動部を撮像することができる撮像部を備え、前記撮像された画像に基づいて、前記伝達部の出力側の動作位置を検出する、態様とすることができる。このような態様とすることにより、ロボットの制御においてさまざまな用途に使用できる撮像部を有効に活用して、伝達部の出力側の動作位置を得ることができる。
(5)上記形態の制御装置であって、前記出力位置検出部は、出力として回転運動を伝える前記伝達部の出力軸の角度位置を検出する、態様とすることができる。このような態様とすれば、出力軸によって駆動される構成の位置を検出する態様に比べて、より正確に伝達部の特性を反映した出力側の動作位置を検出することができる。
(6)上記形態の制御装置であって、前記可動部に、外部から加えられる力を検出することができる力検出部が設けられており、前記制御部は、前記力検出部の出力を用いて、前記可動部を速度制御する、態様とすることができる。このような態様とすれば、力検出部が検出した力に基づいて得られる可動部のたわみの情報も考慮して、より高精度に可動部を速度制御することができる。
(7)上記形態の制御装置であって、前記伝達部は、減速機を含む、態様とすることができる。減速機は、減速機に特有の出力位置の誤差を含む場合がある。上記のような態様とすることにより、伝達部に特有の出力位置の誤差を低減するように、可動部を速度制御することができる。
(8)本開示の他の形態によれば、上記形態のいずれかの制御装置によって制御されるロボットが提供される。
(9)本開示の他の形態によれば、上記形態のいずれかの制御装置と;前記制御装置によって制御される前記ロボットと;を備えるロボットシステムが提供される。
上述した本開示の各形態の有する複数の構成要素はすべてが必須のものではなく、上述の課題の一部又は全部を解決するため、あるいは、本明細書に記載された効果の一部又は全部を達成するために、適宜、前記複数の構成要素の一部の構成要素について、その変更、削除、新たな他の構成要素との差し替え、限定内容の一部削除を行うことが可能である。また、上述の課題の一部又は全部を解決するため、あるいは、本明細書に記載された効果の一部又は全部を達成するために、上述した本開示の一形態に含まれる技術的特徴の一部又は全部を上述した本開示の他の形態に含まれる技術的特徴の一部又は全部と組み合わせて、本開示の独立した一形態とすることも可能である。
A.第1実施形態:
A1.ロボットシステムの構成:
図1は、本実施形態のロボットシステム1を模式的に示す説明図である。本実施形態のロボットシステム1は、ロボット100と、エンドエフェクター200と、制御装置300と、カメラ400と、を備える。
A1.ロボットシステムの構成:
図1は、本実施形態のロボットシステム1を模式的に示す説明図である。本実施形態のロボットシステム1は、ロボット100と、エンドエフェクター200と、制御装置300と、カメラ400と、を備える。
ロボット100は、4個の関節J1〜J4を備えたアーム110を有する4軸ロボットである。関節J1,J2,J4は、ねじり関節である。関節J3は、直動関節である。アーム110を構成する関節と関節の間の構成要素を、本明細書において「アーム要素」と呼ぶ。図1においては、アーム110に含まれる複数のアーム要素のうち、関節J1と関節J2の間のアーム要素110a、関節J2と関節J3の間のアーム要素110b、およびアーム110の先端を構成するアーム要素110dについて、符号を付して示す。
ロボット100は、4個の関節J1〜J4をそれぞれサーボモーターで回転または直進させることにより、アーム110の先端部に取りつけられたエンドエフェクター200を、3次元空間中の指定された位置に指定された姿勢で配することができる。なお、3次元空間におけるエンドエフェクター200の位置を代表する地点を、TCP(Tool Center Point)とも呼ぶ。
ロボット100は、各関節に、サーボモーター410と、減速機510と、モーター角度センサー420と、出力側角度センサー520と、を備える。図1では、技術の理解を容易にするために、関節J1についてのみ、模式的にサーボモーター410と、減速機510と、モーター角度センサー420と、出力側角度センサー520と、を示している。
サーボモーター410は、制御装置300から電流を供給されて駆動力を発生させる。より具体的には、サーボモーター410は、制御装置300から電流を供給されて、その出力軸410oを回転させる。
モーター角度センサー420は、サーボモーター410の出力軸410oの角度位置Pmを検出する。モーター角度センサー420は、ロータリエンコーダーである。モーター角度センサー420が検出した出力軸410oの角度位置Pmは、制御装置300に送信される。
減速機510は、入力軸510iと出力軸510oを備える。減速機510は、入力軸510iに対する回転入力を、回転入力より回転速度が低い回転出力に変換して、出力軸510oから出力する。減速機510は、具体的には、波動歯車減速機である。
減速機510の入力軸510iは、サーボモーター410の出力軸410oに接続されている。入力軸510iの角度位置は、サーボモーター410の出力軸410oの角度位置Pmと等しい。このため、サーボモーター410の出力軸410oの角度位置Pmを検出することができるモーター角度センサー420は、減速機510の入力軸510iの角度位置を検出していることとなる。
サーボモーター410の出力軸410oからの継続的な一定の入力に対して、減速機510は、周期的な伝達誤差を発生させる。すなわち、サーボモーター410の出力軸410oからの継続的な一定速度の回転入力に対して、減速機510の出力軸510oの回転速度および角度位置は、周期的なずれを含む。
アーム要素110aは、関節J1の減速機510の出力軸510oに固定されている。その結果、アーム要素110aは、サーボモーター410の出力軸410oの回転によって、減速機510を介して、関節J1において回転される。
出力側角度センサー520は、アーム要素110a内に配されている。出力側角度センサー520は、減速機510の出力軸510oの角度位置Proを検出する。すなわち、モーター角度センサー420が、減速機510の入力側の動作位置Pmを検出しているのに対して、出力側角度センサー520は、減速機510の出力側の動作位置Proを検出している。
なお、本明細書においては、駆動力を伝達する伝達部(本実施形態において減速機510)において、入力される駆動力を受ける部材(本実施形態において入力軸510i)の動作位置を、「入力側の動作位置」と記載する。駆動力を伝達する伝達部において、出力される駆動力を他の構成に伝達する部材(本実施形態において出力軸510o)の動作位置を、「出力側の動作位置」と記載する。
出力側角度センサー520は、具体的には、カメラを利用する撮像式のロータリーエンコーダーである。出力側角度センサー520は、絶対的な角度位置を検出することができるエンコーダーである。具体的には、出力側角度センサー520においては、対象物の回転に応じて回転されるディスクのそれぞれの角度位置に互いに異なる符号が記録されている。出力側角度センサー520においては、それらの符号がカメラによって読み取られ、画像処理によって認識されることにより、絶対的な角度位置が検出される。このため、出力側角度センサー520の出力は、実際の出力軸510oの角度位置に対して時間遅れを含む。
出力側角度センサー520による出力側の動作位置の検出の周期は、モーター角度センサー420による入力側の動作位置の検出の周期よりも長い。なお、モーター角度センサー420の出力は、減速機510の入力軸510iの角度位置に対して、出力側角度センサー520の出力ほどの時間遅れを含まない。出力側角度センサー520が検出した出力軸510oの角度位置Proは、制御装置300に送信される。
減速機510の出力軸510oの角度位置Proを検出するロータリーエンコーダーを設けることにより、減速機510の出力によって駆動されるより下流の構成(たとえば、アーム要素110aのうち関節J1よりも先端側の位置)の動作位置を測定する態様に比べて、減速機510の出力位置を正確に検出することができる。
ロボット100は、アーム110の先端に力覚センサー190を備えている。エンドエフェクター200は、力覚センサー190を介して、ロボット100のアーム110に取りつけられている。力覚センサー190は、外部、すなわち、力覚センサー190以外の構成から加えられる、X軸、Y軸、Z軸の3軸方向の力と、X軸、Y軸、Z軸まわりのトルクを測定することができる。このため、力覚センサー190は、エンドエフェクター200に作用するX軸、Y軸、Z軸の3軸方向の力と、X軸、Y軸、Z軸まわりのトルクを測定することができる。力覚センサー190の出力は、制御装置300に送信され、ロボット100の制御に使用される。
制御装置300は、ロボット100を制御する制御装置である。制御装置300は、ロボット100に接続されている。制御装置300は、RAM301,ROM302,CPU303を備えるコンピューターを含む。CPU303は、ROM302に記憶されたコンピュータープログラムをRAM301にロードして実行することによって、後述する様々な機能を実現する。ロボット100を制御する制御装置300のCPU303の機能部を、「制御部309」として図1に示す。
エンドエフェクター200は、アーム110の先端に取りつけられている。エンドエフェクター200は、制御装置300に制御されて、ワークピースW01をつかむことができ、また、つかんでいるワークピースW01を離すことができる。その結果、たとえば、ロボット100とエンドエフェクター200とは、制御装置300に制御されて、作業対象物であるワークピースW01をつかんで移動させることができる。なお、図1においては、技術の理解を容易にするため、エンドエフェクター200を単純な円柱で示している。
カメラ400は、ワークピースW01と、そのワークピースW01の周辺と、アーム110と、を含む写真画像を撮像することができる。カメラ400が生成した画像は、制御装置300に送信され、ロボット100の制御に使用される。カメラ400は、支柱F400に支持されている。
A2ロボットの制御:
以下で、本実施形態の制御装置300の制御部309(図1の右下参照)と、比較例1〜3の制御装置300の制御部309ca〜309ccと、について説明する。技術の理解を容易にするため、まず、比較例1〜3の制御装置300の制御部309ca〜309ccを説明し、その後、本実施形態の制御装置300の制御部309について、説明する。なお、比較例1〜3の制御部309ca〜309ccが制御するロボットは、図1に示したロボット100である。比較例1〜3における制御部309ca〜309cc以外の制御装置300の構成は、本実施形態の制御装置300と同じである。
以下で、本実施形態の制御装置300の制御部309(図1の右下参照)と、比較例1〜3の制御装置300の制御部309ca〜309ccと、について説明する。技術の理解を容易にするため、まず、比較例1〜3の制御装置300の制御部309ca〜309ccを説明し、その後、本実施形態の制御装置300の制御部309について、説明する。なお、比較例1〜3の制御部309ca〜309ccが制御するロボットは、図1に示したロボット100である。比較例1〜3における制御部309ca〜309cc以外の制御装置300の構成は、本実施形態の制御装置300と同じである。
以下では、制御部309または制御部309ca〜309ccによって行われる一つの関節J1(図1参照)の制御について、説明する。しかし、本実施形態の制御部309、ならびに比較例1〜3の制御部309ca〜309ccは、実際には、ロボット100の各関節J1〜J4を制御することができる。
図2は、比較例1の制御部309caの構成要素と、ロボット100が備えるサーボモーター410、モーター角度センサー420、および減速機510と、の関係を示すブロック図である。なお、ここでは、技術の理解を容易にするため、力覚センサー190およびカメラ400の出力に応じた制御については、説明を省略する。これらの制御については、後に言及する。
比較例1の制御部309caは、制御信号生成部310と、位置制御部320と、速度制御部330と、を備える。
制御信号生成部310は、アーム110が位置すべき目標位置を表す位置制御信号を生成し、位置制御部320に出力する。
位置制御部320は、制御信号生成部310から位置制御信号を受信する。位置制御部320は、位置フィードバックとして、ロボット100のモーター角度センサー420から、サーボモーター410の角度位置Pmを受信する。位置制御部320は、それらの情報に基づいて、ロボット100のサーボモーター410の速度制御信号を生成し、速度制御部330に出力する。
速度制御部330は、位置制御部320から速度制御信号を受信する。また、速度制御部330は、速度フィードバックとして、モーター角度センサー420から出力されたサーボモーター410の角度位置Pmを微分して得られる信号、すなわち回転速度の信号を受信する。図2において、角度位置の微分を表すブロックを「S」を付したブロック422で示す。速度制御部330は、位置制御部320からの速度制御信号と、サーボモーター410の回転速度と、に基づいて、トルク制御信号を生成し、出力する。その後、トルク制御信号に基づいて、サーボモーター410に供給する電流の大きさが決定され、決定された大きさの電流がサーボモーター410に供給される。
サーボモーター410は、電流を供給されて、駆動力を減速機510に出力する。減速機510は、サーボモーター410から受け取った駆動力の回転速度を減速させる。そして、減速機510は、減速させた駆動力により、出力軸510oを中心にアーム要素110aを回転運動させる(図1参照)。
比較例1においては、サーボモーター410の角度位置Pmが、モーター角度センサー420から位置制御部320に、フィードバックされる。また、サーボモーター410の角速度が、モーター角度センサー420から、速度制御部330に、フィードバックされる。このため、比較例1は、それらのフィードバックがない態様に比べて、アーム要素110aの位置を正確に制御することができる。
比較例1においては、制御対象であるアーム要素110aの角度位置、すなわち減速機510の出力軸510oの角度位置自体は、位置フィードバックに使用されない。比較例1において行われる制御は、「セミクローズド制御」と呼ばれる。
図3は、サーボモーター410と減速機510の制御モデルを示すブロック図である。図3において、各符号は以下の内容を表す。
Jm:モーターイナーシャ
Dm:モーター粘性係数
N:減速機の減速比
K:減速機のバネ定数
Jg:減速機イナーシャ
Dg:減速機粘性係数
θATE:角度伝達誤差
Vm:モーターの回転速度
Vro:減速機510の出力軸510oの回転速度
Jm:モーターイナーシャ
Dm:モーター粘性係数
N:減速機の減速比
K:減速機のバネ定数
Jg:減速機イナーシャ
Dg:減速機粘性係数
θATE:角度伝達誤差
Vm:モーターの回転速度
Vro:減速機510の出力軸510oの回転速度
図3のような制御モデルで表される減速機510は、周期的な角度伝達誤差θATEを発生させる。角度伝達誤差θATEは、以下の式(1)で近似することができる。
θATE=−A×sin(2×θm+Δθ) ・・・ (1)
A:振幅
θm:入力軸の角度位置(サーボモーター410の角度位置)
Δθ:位相ずれ
θATE=−A×sin(2×θm+Δθ) ・・・ (1)
A:振幅
θm:入力軸の角度位置(サーボモーター410の角度位置)
Δθ:位相ずれ
式(1)において、入力軸の角度位置θmが2倍されているのは、以下の理由による。すなわち、波動歯車減速機においては、その原理上、入力軸が半回転する間に角度伝達誤差θATEは、1周期分の変化を生じる。すなわち、入力軸が1回転する間に角度伝達誤差θATEは、2周期分の変化を生じる。このため、式(1)において、入力軸の角度位置θmが2倍されている。
比較例1の制御部309caは、前述のように、減速機510の出力のフィードバックは受けていない。このため、減速機510において生じる角度伝達誤差θATEによるアーム要素110aの振動や位置ずれは解消することができない。
図4は、比較例2の制御部309cbの構成要素と、ロボット100が備えるサーボモーター410、モーター角度センサー420、減速機510、および出力側角度センサー520と、の関係を示すブロック図である。比較例2の制御部309cbは、ロボット100の出力側角度センサー520からの減速機510の出力軸510oの角度位置Proを入力とするローパスフィルター522を備える。ローパスフィルター522は、入力のうち、減速機510の共振周波数よりも低い周波数成分のみを、出力する。
比較例2の制御部309cbにおいては、位置制御部320は、位置フィードバックとして、ローパスフィルター522から、減速機510の出力軸510oの角度位置Proのうちの低周波成分で構成される角度位置を受信する。位置制御部320は、減速機510の出力軸510oの角度位置Proのうちの低周波成分で構成される角度位置と、制御信号生成部310から位置制御信号と、に基づいて、ロボット100のサーボモーター410の速度制御信号を生成する。一方、モーター角度センサー420の出力であるサーボモーター410の角度位置Pmまたはその微分値は、速度制御部330にはフィードバックされない。
比較例2の制御部309cbの他の点は、比較例1の制御部309caと同じである。
比較例2においては、減速機510の出力軸510oの角度位置Proが、出力側角度センサー520から、位置制御部320にフィードバックされる。このため、比較例2は、減速機510の角度伝達誤差θATE(図3参照)によるアーム要素110aの振動や位置ずれを低減する制御を行うことができる。このため、比較例2は、比較例1に比べて、アーム要素110aの位置をより正確に制御することができる。よって、比較例2の制御部309cbによれば、あらかじめ定められた移動経路にしたがって前記ロボットを動作させる制御である連続経路制御(CP制御)においても、設定された移動経路上を正確にエンドエフェクタに移動させることができる。
また、比較例2においては、減速機510の出力軸510oの角度位置Proが、ローパスフィルター522を介して、位置制御部320にフィードバックされる。すなわち、ローパスフィルター522の出力を用いて、アーム要素110aが速度制御される。このため、バネ成分Kを含む減速機510(図3参照)の出力軸510oの角度位置Proを位置制御部320にフィードバックさせても、発振を起こすことなく、安定したアーム要素110aの速度制御および位置制御を行うことができる。
比較例2においては、制御対象である減速機510の出力軸510oの角度位置Proが、位置フィードバックに使用される。比較例2において行われる制御は、「フルクローズド制御」と呼ばれる。
図5は、比較例3の制御部309ccの構成要素と、ロボット100が備えるサーボモーター410、モーター角度センサー420、減速機510、および出力側角度センサー520と、の関係を示すブロック図である。比較例3の制御部309ccは、サーボモーター410の角度位置Pmに対する減速機510の出力軸510oの角度位置Proの差を入力とするローパスフィルター523を備える。ローパスフィルター523は、入力のうち、減速機510の共振周波数よりも低い周波数成分のみを、出力する。ローパスフィルター523の構成は、ローパスフィルター522と同じである。ローパスフィルター523の出力(すなわち、サーボモーター410の角度位置Pmに対する減速機510の出力軸510oの角度位置Proの差のうちの低周波成分で構成される角度)Trは、おおまかには、減速機510における入力と出力の間のねじれ量(位置の誤差)を表す。
比較例3の制御部309ccにおいては、位置制御部320は、位置フィードバックとして、ローパスフィルター522からの出力Tr(すなわち、減速機510におけるねじれ量)と、サーボモーター410の角度位置Pmと、が加算された信号を受信する。位置制御部320は、その信号と、制御信号生成部310から位置制御信号と、に基づいて、ロボット100のサーボモーター410の速度制御信号を生成する。
比較例3の制御部309ccの他の点は、比較例2の制御部309cbと同じである。
比較例3においては、減速機510の出力側ではなく入力側の角度位置であるサーボモーター410の角度位置Pmが、モーター角度センサー420から、位置制御部320にフィードバックされる(図5および図4参照)。このため、比較例3は、比較例2よりも高い速度域まで、アーム要素110aの振動や位置ずれを低減することができる。すなわち、比較例3は、比較例2よりも帯域が広く、高い速度域まで安定した制御を行うことができる。
また、比較例3においては、サーボモーター410の角度位置Pmに対する減速機510の出力軸510oの角度位置Proの差のうちの低周波成分で構成される角度Tr(減速機510におけるねじれ量)が、位置制御部320にフィードバックされる。このため、比較例3は、減速機510の角度伝達誤差θATEによるアーム要素110aの振動や位置ずれを低減する制御を行うことができる。すなわち、比較例3は、比較例1に比べて、アーム要素110aの位置をより正確に制御することができる。
比較例3においては、制御対象である減速機510の出力軸510oの角度位置Proが、位置フィードバックに使用される。そして、減速機510の入力軸510iの角度位置Pmが、速度フィードバックに使用される。比較例3において行われる制御は、「ハイブリッド制御」と呼ばれる。
図6は、第1実施形態の制御部309の構成要素と、ロボット100が備えるサーボモーター410、モーター角度センサー420、減速機510、および出力側角度センサー520と、の関係を示すブロック図である。本実施形態の制御部309は、サーボモーター410の角度位置Pmに対する減速機510の出力軸510oの角度位置Proの遅延量Aを検出する遅延検出ブロック521を備える。本実施形態の制御部309は、遅延検出ブロック521によって検出された遅延量Aに基づく遅延量Aaだけ、サーボモーター410の角度位置Pmを遅延させて遅延角度位置Pmdを生成する遅延ブロック424を備える。その結果、遅延ブロック424によって、サーボモーター410の角度位置Pmの検出タイミングと、減速機510の出力軸510oの角度位置Proの検出タイミングと、のずれが低減または解消される。
本実施形態の制御部309の構成要素は、さらに、遅延されたサーボモーター410の遅延角度位置Pmdに対する減速機510の出力軸510oの角度位置Proの差を入力とするローパスフィルター524を備える。ローパスフィルター524は、入力のうち、減速機510の共振周波数よりも低い周波数成分のみを、出力する。ローパスフィルター524の構成は、ローパスフィルター522,523と同じである。ローパスフィルター524の出力(すなわち、検出タイミングが一致するように調整されたサーボモーター410の遅延角度位置Pmdに対する減速機510の出力軸510oの角度位置Proの差のうち、低周波成分で構成される角度)Trdは、減速機510におけるねじれ量を表す。
本実施形態の制御部309においては、位置制御部320は、位置フィードバックとして、ローパスフィルター524からの出力Trd(すなわち、減速機510におけるねじれ量)と、サーボモーター410の角度位置Pmと、が加算された信号を受信する。位置制御部320は、その信号と、制御信号生成部310からの位置制御信号と、に基づいて、ロボット100のサーボモーター410の速度制御信号を生成する。
また、本実施形態の制御部309においては、速度制御部330は、速度フィードバックとして、ローパスフィルター524からの出力Trd(すなわち、減速機510におけるねじれ量)と、サーボモーター410の角度位置Pmと、が加算された信号を微分して得られる信号を受信する。図6において、この微分を表すブロックを「S」を付したブロック423で示す。速度制御部330は、その信号と、位置制御部320からの速度制御信号と、に基づいて、ロボット100のサーボモーター410のトルク制御信号を生成する。
本実施形態の制御部309の他の点は、比較例3の制御部309ccと同じである。
本実施形態においては、サーボモーター410の遅延角度位置Pmdと減速機510の出力軸510oの角度位置Proとの差(減速機510において発生する位置の誤差)が、速度制御部330にフィードバックされる。このため、本実施形態は、減速機510において発生する位置の誤差を速度制御部330にフィードバックしない比較例3よりも、減速機510の角度伝達誤差θATEによるアーム要素110aの振動や位置ずれを低減する制御を、高い速度域まで、適切に行うことができる。すなわち、本実施形態は、比較例3よりも帯域が広く、高い速度域まで安定した制御を行うことができる。
また、本実施形態においては、検出タイミングが調整されたサーボモーター410の遅延角度位置Pmdと減速機510の出力軸510oの角度位置Proとの差が、速度制御部330へのフィードバックに使用される。すなわち、制御部309は、入力軸510iの角度位置Pmを遅延させることによって得られる遅延角度位置Pmdと、減速機510の出力軸510oの角度位置Proとの差を用いて、アーム要素110aを速度制御する(図6の330参照)。このため、本実施形態は、出力側角度センサー520による検出の周期と、モーター角度センサー420による検出の周期とにずれがある場合にも、減速機510において発生する位置の誤差を適切に計算して、比較例3よりも速い速度域まで、適切にアーム要素110aの振動や位置ずれを低減することができる。すなわち、本実施形態は、比較例3よりも帯域が広い。
さらに、本実施形態においては、減速機510の入力軸510iの角度位置Pmの位置制御部320および速度制御部330へのフィードバックについては、遅延ブロック424による遅延を生じさせていない(図6参照)。このため、高い速度域までアーム要素110aの振動や位置ずれを低減することができる。
図7は、本実施形態、比較例1、および比較例3の制御部309,309ca,309ccによる制御を行った場合の、減速機510の出力軸510oの位置偏差を表すグラフである。グラフGaが、比較例1の制御部309ca(図2参照)を採用した場合の出力軸510oの位置偏差を表す。グラフGcが、比較例3の制御部309cc(図5参照)を採用した場合の出力軸510oの位置偏差を表す。グラフG0が、本実施形態の制御部309(図6参照)を採用した場合の出力軸510oの位置偏差を表す。なお、図2,図5および図6を使用して説明した本実施形態、比較例1、および比較例3の制御部309,309ca,309ccによる制御の相違点以外の条件は、すべて統一して、位置偏差の測定を行った。
図7より、比較例1の制御部309ca、比較例3の制御部309cc、および本実施形態の制御部309のいずれの場合についても位置偏差の周期は略同一である。しかし、位置偏差の大きさは、本実施形態の制御部309が最も小さく、比較例3の制御部309ccが次に小さく、比較例1の制御部309caが最も大きいことが分かる。
図8は、本実施形態の制御部309において、遅延ブロック424(図6参照)の機能を停止させた場合と、遅延ブロック424を機能させた場合の、減速機510の出力軸510oの位置偏差を表すグラフである。グラフGp1が、遅延ブロック424の機能を停止させた場合の出力軸510oの位置偏差を表す。グラフGp0が、遅延ブロック424を機能させた場合の出力軸510oの位置偏差を表す。ただし、図8の縦軸のスケールは、図7の縦軸のスケールとは異なっている。
図8から分かるように、遅延ブロック424の機能を停止させた場合に比べて、遅延ブロック424を機能させた場合の方が、振幅が小さくなり、制御が安定していることが分かる。
以上のように、本実施形態の制御装置300は、減速機510の入力軸510iの動作位置を検出するモーター角度センサー420からの入力検出値Pmと、減速機510の出力軸510oの動作位置を検出する出力側角度センサー520からの出力検出値Proと、を用いて、減速機510を速度制御する制御部309を備える(図6のPm,Pro,330参照)。このため、入力検出値Pmと出力検出値Proとに基づいて、減速機510において発生する位置の誤差を考慮して、正確に減速機510を速度制御することができる。その結果、出力検出値Proを用いて速度制御しない比較例1〜3(図2、図4、および図5参照)に比べて、高い速度域まで、正確にアーム要素110aの位置を制御することができる。よって、本実施形態の制御装置300によれば、連続経路制御(CP制御)においても、移動経路上を正確にエンドエフェクタに移動させることができる。また、事前に各ロボットの減速機510の誤差を個別に測定することなく、正確にアーム要素110aの位置を制御することができる。
なお、本明細書においては、「Xを用いて、Oを速度制御する」という場合には、X(たとえば、図6のPro参照)を直接使用してOを速度制御する態様のほか、Xに対して所定の処理を行って得られた情報(たとえば、図6の「Pm+Trd」および423参照)を使用してOを速度制御する場合も含まれる。
本実施形態におけるサーボモーター410は、「駆動部」とも呼ばれる。減速機510は、「伝達部」とも呼ばれる。アーム要素110aは、「可動部」とも呼ばれる。モーター角度センサー420は、「入力位置検出部」とも呼ばれる。サーボモーター410の出力軸410oの角度位置Pmは、「入力検出値」とも呼ばれる。出力側角度センサー520は、「出力位置検出部」とも呼ばれる。減速機510の出力軸510oの角度位置Proは、「出力検出値」とも呼ばれる。遅延角度位置Pmdは、「遅延入力検出値」とも呼ばれる。カメラ400は、「撮像部」とも呼ばれる。
B.第2実施形態:
図9は、第2実施形態の制御部309bの構成要素と、ロボット100が備えるサーボモーター410、モーター角度センサー420、減速機510、出力側角度センサー520、アーム110、および力覚センサー190と、の関係を示すブロック図である。第2実施形態の制御部309bは、第1実施形態の制御部309が備える遅延検出ブロック521および遅延ブロック424を備えない(図6参照)。また、第2実施形態においては、減速機510の出力軸510oの角度位置Proと減速機510の入力軸510iの角度位置Pmとの差が位置制御に使用されない(図9において、該当するフィードバック部分を破線の矢印で示す)。
図9は、第2実施形態の制御部309bの構成要素と、ロボット100が備えるサーボモーター410、モーター角度センサー420、減速機510、出力側角度センサー520、アーム110、および力覚センサー190と、の関係を示すブロック図である。第2実施形態の制御部309bは、第1実施形態の制御部309が備える遅延検出ブロック521および遅延ブロック424を備えない(図6参照)。また、第2実施形態においては、減速機510の出力軸510oの角度位置Proと減速機510の入力軸510iの角度位置Pmとの差が位置制御に使用されない(図9において、該当するフィードバック部分を破線の矢印で示す)。
第2実施形態においては、力覚センサー190(図1参照)の出力が速度制御に使用される。力覚センサー190が検出したエンドエフェクター200に作用するX軸、Y軸、Z軸まわりのトルクと、エンドエフェクター200およびワークピースW01の質量と、から、関節J1周りの角加速度Artが得られる。第2実施形態の制御部309bは、減速機510の入力軸510iの角度位置Pmを2階微分して得られる値に対する、アーム110の先端の角加速度Artの差を、入力値とするハイパスフィルター112を備える。図9において、角度位置の2階微分を表すブロックを「S2」を付したブロック426で示す。減速機510の入力軸510iの角度位置Pmを2回微分して得られる値と、アーム110の先端の角加速度Artと、の差は、アーム110のたわみによる加速度の変化(ねじれ加速度)を表す。ハイパスフィルター112は、入力のうち、所定の共振周波数よりも高い周波数成分のみを、出力する。
速度制御部330は、速度フィードバックfvaとして、ハイパスフィルター112からの出力を積分して得られる値を、さらにゲインKv倍して得られる値を、受信する。図9において、角度位置の積分を表すブロックを「1/S」を付したブロック114で示す。Kv倍の処理を表すブロックを「Kv」を付したブロック116で示す。
ハイパスフィルター112を介して速度フィードバックfvaを行うことにより、積分(図9の積分ブロック114参照)によるオフセットずれを除去して、速度フィードバックを行うことができる。また、ゲインKv倍して得られる値を速度フィードバックfvaとすることにより、アーム110のねじれに起因する振動を抑制するための補正量を適切な値に調整することができる。
また、速度制御部330は、速度フィードバックfvrとして、ローパスフィルター524からの出力Trd(すなわち、減速機510におけるねじれ量)と、サーボモーター410の角度位置Pmと、が加算された信号を微分して得られる信号を受信する。ハイパスフィルター112経由で得られる速度フィードバックfvaが、アーム110のたわみによる加速度変化(ねじれ加速度)を表すのに対して、ローパスフィルター524経由で得られる速度フィードバックfvrは、前述のように、減速機510における入力と出力の間のねじれ量を表す。
本実施形態の制御部309bの他の点は、第1実施形態の制御部309と同じである。
本実施形態においては、速度制御部330において、アーム110のたわみによる加速度変化(ねじれ加速度)を表す速度フィードバックfvaと、減速機510における入力と出力の間のねじれ量を表す速度フィードバックfvrと、に基づいて速度制御が行われる。このため、アーム110のたわみと減速機510のねじれの両方を考慮して、高精度にアーム要素110aを速度制御することができる。
図10は、本実施形態の制御部309bにおけるアーム110のたわみによる加速度変化(ねじれ加速度)を表す速度フィードバックfvaと、減速機510における入力と出力の間のねじれ量を表す速度フィードバックfvrと、の効果を示すグラフである。グラフG20が本実施形態の制御部309b(図9参照)による制御を行った場合の出力軸510oの位置偏差を表す。
図10において、グラフG21が、本実施形態の制御部309bにおいて、アーム110のたわみによる加速度変化を表す速度フィードバックfva(図9参照)を行わず、減速機510における入力と出力の間のねじれ量を表す速度フィードバックfvrを行う、制御を行った場合の出力軸510oの位置偏差を表す。グラフG22が、比較例1(図2参照)において、さらに、アーム110のたわみによる加速度変化を表す速度フィードバックfva(図9参照)を行う制御を行った場合の出力軸510oの位置偏差を表す。グラフG23が、比較例1(図2参照)の制御を行った場合の出力軸510oの位置偏差を表す。
図10より、本実施形態の制御部309bによる制御を行った場合の出力軸510oの位置偏差(グラフG20)が最も小さいことがわかる。本実施形態の制御部309bにおいて速度フィードバックfvaを行わない制御を行った場合の位置偏差(グラフG21)が、次に小さいことが分かる。比較例1(図2参照)において速度フィードバックfva(図9参照)を行う制御を行った場合の位置偏差(グラフG22)が、3番目に小さいことが分かる。そして、比較例1(図2参照)の制御を行った場合の位置偏差(グラフG23)が、最も大きいことがわかる。
すなわち、図10のグラフG20とグラフG21の比較、およびグラフG22とグラフG23の比較より、アーム110のたわみによる加速度変化を表す速度フィードバックfva(図9参照)を行うことの有効性がわかる。また、図10のグラフG21とグラフG23の比較より、減速機510における入力と出力の間のねじれ量を表す速度フィードバックfvr(図9参照)を行うことの有効性がわかる。
本実施形態における力覚センサー190は、「力検出部」とも呼ばれる。なお、前述のように、本明細書においては、「Xを用いて、Oを速度制御する」という場合には、X(たとえば、図9のArt参照)を直接使用してOを速度制御する態様のほか、Xに対して所定の処理を行って得られた情報(たとえば、図9のfva参照)を使用してOを速度制御する場合も含まれる。
C.他の実施形態:
C1.他の実施形態1:
(1)上記実施形態においては、駆動部は、サーボモーター410である。しかし、駆動部は、サーボモーター以外の態様とすることもできる。駆動部は、たとえば、出力が回転運動であるモーターとすることができる。また、駆動部は、出力が直線運動であるリニアモーターやシリンダーであってもよい。
C1.他の実施形態1:
(1)上記実施形態においては、駆動部は、サーボモーター410である。しかし、駆動部は、サーボモーター以外の態様とすることもできる。駆動部は、たとえば、出力が回転運動であるモーターとすることができる。また、駆動部は、出力が直線運動であるリニアモーターやシリンダーであってもよい。
(2)上記実施形態においては、出力位置検出部は、出力側角度センサー520としての撮像式のロータリーエンコーダーである。しかし、伝達部の出力側の動作位置を検出する出力位置検出部としては、他の構成を採用することもできる。可動部が回転される場合には、出力位置検出部としては、光学式のロータリーエンコーダー、レゾルバ、ポテンショメーターを採用することができる。また、可動部が直線的に動かされる場合には、出力位置検出部としては、ポテンショメーターやリニアエンコーダーを採用することができる。それらのセンサーは、絶対的な位置が検出できるものであってもよいし、絶対的な位置を検出することはできず、相対的な位置が検出できるものであってもよい。
(3)上記実施形態においては、入力検出値は、モーター角度センサー420としての光学式のロータリーエンコーダーである。しかし、伝達部の入力側の動作位置を検出する入力位置検出部としては、他の構成を採用することもできる。駆動部が回転力を出力する場合には、入力位置検出部としては、レゾルバやポテンショメーターを採用することができる。また、駆動部が直線的な動きを伴う駆動力を出力する場合には、入力位置検出部としては、ポテンショメーターやリニアエンコーダーを採用することができる。それらのセンサーは、絶対的な位置が検出できるものであってもよいし、絶対的な位置を検出することはできず、相対的な位置が検出できるものであってもよい。
(4)上記第1実施形態においては、サーボモーター410の出力軸410oに減速機510の入力軸510iが接続されており、サーボモーター410の出力軸410oの角度位置と、減速機510の入力軸510iの角度位置とは等しい(図1の410o,510i参照)。しかし、駆動力を発生させる駆動部と伝達部の間には、他の歯車機構や、ベルトとプーリーなど、回転速度を変化させる機構が設けられていてもよい。そのような機構の減速比Npとし、駆動部の出力軸の角度位置をθoとすると、減速機の入力軸の角度位置θは、θ=Np×θoで得られる。
(5)上記第1実施形態においては、第1入力位置検出部としてのモーター角度センサー420は、第1駆動部としてのサーボモーター410の出力軸410oの角度位置を検出する(図1参照)。しかし、伝達部の入力側の動作位置を検出する第1入力位置検出部は、伝達部の入力を測定してもよい。
(6)上記第2実施形態においては、出力側角度センサー520の出力検出値Proは、位置制御に使用されない。しかし、伝達部の出力側の動作位置を検出する出力位置検出部からの出力検出値は、位置制御に使用されることもできる(図9において320に入力される破線の矢印参照)。
(7)上記第1実施形態においては、制御装置300は、ロボット100とは別個の構成として設けられている(図1参照)。しかし、制御装置は、ロボットと一体の形態で設けられることもできる。また、制御装置は、ロボットとは別に設けられ、有線または無線でロボットと接続される態様とすることもできる。
また、上記実施形態において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。たとえば、上記実施形態においては、制御部309としてのCPUがコンピュータープログラムを読み出して実行することにより、様々な機能を実現する。しかし、制御部が実現する機能の一部または全部はハードウェア回路により実現されてもよい。制御部は、何らかの処理を実現するプロセッサーとして構成されることができる。
C2.他の実施形態2:
(1)上記第2実施形態においては、制御部309bは、第1実施形態の制御部309が備える遅延検出ブロック521および遅延ブロック424を備えない(図6および図9参照)。しかし、第2実施形態において、入力検出値を遅延させることによって得られる遅延入力検出値と、出力検出値との差を用いて、可動部を速度制御する態様とすることもできる。
(1)上記第2実施形態においては、制御部309bは、第1実施形態の制御部309が備える遅延検出ブロック521および遅延ブロック424を備えない(図6および図9参照)。しかし、第2実施形態において、入力検出値を遅延させることによって得られる遅延入力検出値と、出力検出値との差を用いて、可動部を速度制御する態様とすることもできる。
(2)また、第1の実施形態において、遅延検出ブロック521および遅延ブロック424を備えない態様とすることもできる(図6参照)。出力位置検出部による出力側の動作位置の検出の周期と、入力位置検出部による入力側の動作位置の検出の周期が、実質的に等しい場合には、入力検出値を遅延させることなく、入力検出値と出力検出値との差を用いて、前記可動部を速度制御することができる。
C3.他の実施形態3:
上記実施形態においては、制御部309は、入力のうち、減速機510の共振周波数よりも低い周波数成分のみを、出力するローパスフィルター524を備える。しかし、ローパスフィルターが通過させる周波数領域は、他の周波数領域とすることもできる。たとえば、ローパスフィルターは、入力のうち、伝達部の共振周波数の一部を含む部分を出力する態様とすることもできる。また、制御部は、ローパスフィルターを介さずに、必要に応じて遅延された入力検出値と、出力検出値と、の差を用いて、可動部を速度制御してもよい。
上記実施形態においては、制御部309は、入力のうち、減速機510の共振周波数よりも低い周波数成分のみを、出力するローパスフィルター524を備える。しかし、ローパスフィルターが通過させる周波数領域は、他の周波数領域とすることもできる。たとえば、ローパスフィルターは、入力のうち、伝達部の共振周波数の一部を含む部分を出力する態様とすることもできる。また、制御部は、ローパスフィルターを介さずに、必要に応じて遅延された入力検出値と、出力検出値と、の差を用いて、可動部を速度制御してもよい。
C4.他の実施形態4:
上記実施形態においては、出力位置検出部は、出力側角度センサー520としての光学式のロータリーエンコーダーである。しかし、伝達部の出力側の動作位置を検出する出力位置検出部としては、出力側角度センサー520以外の様々なセンサーを使用することができる。たとえば、出力位置検出部としては、X,Y,Z軸方向の加速度と角速度を検出することができるIMU(Inertial Measurement Unit)を採用することができる。また、出力位置検出部としては、伝達部の出力側の動作位置を検出することができるレーザー変位計や、カメラ400(図1参照)等を採用することができる。測定時に測定対象に取りつけられるセンサーは、あらかじめ装置に組み込まれているセンサーであってもよいし、測定のために装置に取りつけられるセンサーであってもよい。
上記実施形態においては、出力位置検出部は、出力側角度センサー520としての光学式のロータリーエンコーダーである。しかし、伝達部の出力側の動作位置を検出する出力位置検出部としては、出力側角度センサー520以外の様々なセンサーを使用することができる。たとえば、出力位置検出部としては、X,Y,Z軸方向の加速度と角速度を検出することができるIMU(Inertial Measurement Unit)を採用することができる。また、出力位置検出部としては、伝達部の出力側の動作位置を検出することができるレーザー変位計や、カメラ400(図1参照)等を採用することができる。測定時に測定対象に取りつけられるセンサーは、あらかじめ装置に組み込まれているセンサーであってもよいし、測定のために装置に取りつけられるセンサーであってもよい。
たとえば、出力位置検出部が、可動部を撮像することができるデジタルカメラなどの撮像部(図1の400参照)を備える場合には、撮像された画像に基づいて、伝達部の出力側の動作位置Proを検出することができる。そのような態様とすることにより、ロボットの制御において、追従制御などさまざまな用途に使用できる撮像部を有効に活用して、伝達部の出力側の動作位置を得ることができる。
C5.他の実施形態5:
上記第1実施形態においては、出力側角度センサー520は、伝達部としての減速機510の出力軸510oの角度位置を検出する。しかし、伝達部の出力側の動作位置を検出する出力位置検出部は、伝達部の出力を測定してもよいし、伝達部の出力によって駆動される下流の構成の動作位置を測定してもよい。伝達部の出力によって駆動される下流の構成の動作位置を測定する構成としては、たとえば、伝達部の出力によって駆動される下流の構成に設けられ、所定の方向の加速度を検出することができる慣性センサーがある。
上記第1実施形態においては、出力側角度センサー520は、伝達部としての減速機510の出力軸510oの角度位置を検出する。しかし、伝達部の出力側の動作位置を検出する出力位置検出部は、伝達部の出力を測定してもよいし、伝達部の出力によって駆動される下流の構成の動作位置を測定してもよい。伝達部の出力によって駆動される下流の構成の動作位置を測定する構成としては、たとえば、伝達部の出力によって駆動される下流の構成に設けられ、所定の方向の加速度を検出することができる慣性センサーがある。
C6.他の実施形態6:
上記第2実施形態においては、力検出部として、エンドエフェクター200に作用する互いに直交するX軸、Y軸、Z軸の3軸方向の力と、X軸、Y軸、Z軸まわりのトルクを測定することができる力覚センサーが使用される(図1および図9の190参照)。しかし、力検出部として、1軸方向の力と、その軸まわりのトルクを測定することができる力覚センサーや、互いに直交するX軸およびY軸の2軸方向の力と、X軸およびY軸まわりのトルクを測定することができる力覚センサーを使用することもできる。また、力検出部を使用せずに、可動部の速度制御を行う態様とすることもできる。
上記第2実施形態においては、力検出部として、エンドエフェクター200に作用する互いに直交するX軸、Y軸、Z軸の3軸方向の力と、X軸、Y軸、Z軸まわりのトルクを測定することができる力覚センサーが使用される(図1および図9の190参照)。しかし、力検出部として、1軸方向の力と、その軸まわりのトルクを測定することができる力覚センサーや、互いに直交するX軸およびY軸の2軸方向の力と、X軸およびY軸まわりのトルクを測定することができる力覚センサーを使用することもできる。また、力検出部を使用せずに、可動部の速度制御を行う態様とすることもできる。
なお、本明細書において、「XにOが設けられている」とは、X内にOが設けられている場合や、XにOが直接取りつけられている場合だけでなく、X(たとえば図1のアーム要素110a)に直接または関節に取りつけられている他の部材(たとえば図1のアーム要素110d)にO(たとえば図1の力覚センサー190)が取りつけられている場合を含む。
C7.他の実施形態7:
上記実施形態においては、駆動力を伝達する伝達部は、減速機510である。しかし、伝達誤差を低減させる対象である伝達部は、回転入力をより回転速度が高い回転出力に変換する構成であってもよいし、回転入力と回転出力がほぼ一致する構成であってもよい。
上記実施形態においては、駆動力を伝達する伝達部は、減速機510である。しかし、伝達誤差を低減させる対象である伝達部は、回転入力をより回転速度が高い回転出力に変換する構成であってもよいし、回転入力と回転出力がほぼ一致する構成であってもよい。
伝達部は、より具体的には、ベルトおよびプーリー、歯車機構、または継ぎ手とすることができる。ベルトおよびプーリー、ならびに歯車機構は、回転入力をより回転速度が高い回転出力に変換する構成であってもよいし、回転入力をより回転速度が低い回転出力に変換する構成であってもよいし、回転入力と回転出力がほぼ一致する構成であってもよい。
C8.他の実施形態8:
(1)上記第2実施形態においては、本開示を4軸ロボットを例として説明した(図1参照)。しかし、本開示は、6軸ロボットや他の数の関節を備えるロボットに適用することもできる。ただし、本開示は、関節に駆動力を伝達する伝達部を備える装置に適用することが好ましい。
(1)上記第2実施形態においては、本開示を4軸ロボットを例として説明した(図1参照)。しかし、本開示は、6軸ロボットや他の数の関節を備えるロボットに適用することもできる。ただし、本開示は、関節に駆動力を伝達する伝達部を備える装置に適用することが好ましい。
(2)上記実施形態においては、ロボットを例に本開示を説明した。しかし、本明細書で開示した技術は、ロボットに限らず、プリンター、プロジェクターど、駆動力を伝達する伝達部を介して制御が行われて物理的な状態が変化する様々な機械に適用することができる。たとえば、本明細書で開示した技術をプリンターの印刷ヘッドの動作や印刷媒体の搬送動作に適用することにより、ヘッドと印刷媒体との相対位置の精度を高めることができる。
C9.他の実施形態9:
本開示は、上述の実施形態に限られるものではなく、その趣旨を逸脱しない範囲において種々の構成で実現することができる。例えば、発明の概要の欄に記載した各形態中の技術的特徴に対応する実施形態中の技術的特徴は、上述の課題の一部又は全部を解決するために、あるいは、上述の効果の一部又は全部を達成するために、適宜、差し替えや、組み合わせを行うことが可能である。また、その技術的特徴が本明細書中に必須なものとして説明されていなければ、適宜、削除することが可能である。
本開示は、上述の実施形態に限られるものではなく、その趣旨を逸脱しない範囲において種々の構成で実現することができる。例えば、発明の概要の欄に記載した各形態中の技術的特徴に対応する実施形態中の技術的特徴は、上述の課題の一部又は全部を解決するために、あるいは、上述の効果の一部又は全部を達成するために、適宜、差し替えや、組み合わせを行うことが可能である。また、その技術的特徴が本明細書中に必須なものとして説明されていなければ、適宜、削除することが可能である。
1…ロボットシステム;100…ロボット;110…アーム;110a,110b,110d…アーム要素;112…ハイパスフィルター;114…積分ブロック;116…ゲインブロック;190…力覚センサー;200…エンドエフェクター;300…制御装置;301…RAM;302…ROM;303…CPU;309,309b…制御部;309ca,309cb,309cc…制御部;310…制御信号生成部;320…位置制御部;330…速度制御部;400…カメラ;410…サーボモーター;410o…出力軸;420…モーター角度センサー;422,423…微分ブロック;424…遅延ブロック;426…微分ブロック;510…減速機;510i…減速機の入力軸;510o…減速機の出力軸;520…出力側角度センサー;521…遅延検出ブロック;522〜524…ローパスフィルター;A…遅延量;Aa…遅延量;Art…アームの先端の角加速度;F400…支柱;G0…制御部309を採用した場合の位置偏差のグラフ;G20…制御部309bによる制御を行った場合の位置偏差のグラフ;G21…制御部309bにおいて、速度フィードバックfvaを行わず、速度フィードバックfvrを行う制御を行った場合の位置偏差のグラフ;G22…比較例1において、さらに、速度フィードバックfvaを行う制御を行った場合の位置偏差グラフ;G23…比較例1の制御を行った場合の位置偏差のグラフ;Ga…制御部309caを採用した場合の出力軸510oの位置偏差のグラフ;Gc…制御部309ccを採用した場合の出力軸510oの位置偏差のグラフ;Gp0…遅延ブロック424を機能させた場合の出力軸510oの位置偏差のグラフ;Gp1…遅延ブロック424の機能を停止させた場合の出力軸510oの位置偏差のグラフ;J1〜J4…関節;K…ばね定数;N…減速機の減速比;Pm…減速機510は、入力軸510iと出力軸の角度位置(入力検出値);Pmd…遅延角度位置;Pro…減速機510の出力軸510oの角度位置(出力検出値);Tr…減速機510における入力と出力の間のねじれ量;Trd…減速機510における入力と出力の間のねじれ量;Vm…モーターの回転速度;Vro…減速機510の出力軸510oの回転速度;W01…ワークピース;fva…速度フィードバック;fvr…速度フィードバック;θATE…角度伝達誤差。
Claims (9)
- 駆動力を発生させる駆動部によって伝達部を介して駆動される可動部を備えるロボットを制御する制御装置であって、
前記伝達部の入力側の動作位置を検出する入力位置検出部からの入力検出値と、前記伝達部の出力側の動作位置を検出する出力位置検出部からの出力検出値と、を用いて、前記可動部を速度制御する制御部を備える、制御装置。 - 請求項1記載の制御装置であって、
前記出力位置検出部による前記出力側の動作位置の検出の周期は、前記入力位置検出部による前記入力側の動作位置の検出の周期よりも長く、
前記制御部は、前記入力検出値を遅延させることによって得られる遅延入力検出値と、前記出力検出値との差を用いて、前記可動部を速度制御する、制御装置。 - 請求項2記載の制御装置であって、
前記制御部は、
前記遅延入力検出値と前記出力検出値との差を入力とするローパスフィルターを備え、
前記ローパスフィルターの出力を用いて、前記可動部を速度制御する、制御装置。 - 請求項1から3のいずれか1項に記載の制御装置であって、
前記出力位置検出部は、前記可動部を撮像することができる撮像部を備え、前記撮像された画像に基づいて、前記伝達部の出力側の動作位置を検出する、制御装置。 - 請求項1から3のいずれか1項に記載の制御装置であって、
前記出力位置検出部は、出力として回転運動を伝える前記伝達部の出力軸の角度位置を検出する、制御装置。 - 請求項1から5のいずれか1項に記載の制御装置であって、
前記可動部に、外部から加えられる力を検出することができる力検出部が設けられており、
前記制御部は、前記力検出部の出力を用いて、前記可動部を速度制御する、制御装置。 - 請求項1から6のいずれか1項に記載の制御装置であって、
前記伝達部は、減速機を含む、制御装置。 - 請求項1から6のいずれか1項に記載の制御装置によって制御されるロボット。
- 請求項1から6のいずれか1項に記載の制御装置と、
前記制御装置によって制御される前記ロボットと、
を備えるロボットシステム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017114064A JP2018202589A (ja) | 2017-06-09 | 2017-06-09 | 制御装置、ロボット、およびロボットシステム |
CN201810585843.0A CN109015628B (zh) | 2017-06-09 | 2018-06-07 | 控制装置、机器人以及机器人*** |
US16/003,333 US10994414B2 (en) | 2017-06-09 | 2018-06-08 | Control device and robot system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017114064A JP2018202589A (ja) | 2017-06-09 | 2017-06-09 | 制御装置、ロボット、およびロボットシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018202589A true JP2018202589A (ja) | 2018-12-27 |
Family
ID=64562936
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017114064A Pending JP2018202589A (ja) | 2017-06-09 | 2017-06-09 | 制御装置、ロボット、およびロボットシステム |
Country Status (3)
Country | Link |
---|---|
US (1) | US10994414B2 (ja) |
JP (1) | JP2018202589A (ja) |
CN (1) | CN109015628B (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020179465A (ja) * | 2019-04-25 | 2020-11-05 | セイコーエプソン株式会社 | 制御装置、制御方法、およびロボットシステム |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS648885A (en) * | 1987-07-01 | 1989-01-12 | Matsushita Electric Ind Co Ltd | Rotary speed detector |
JP4052490B2 (ja) | 1998-03-18 | 2008-02-27 | 株式会社ハーモニック・ドライブ・システムズ | 波動歯車減速機の角度伝達誤差補正方法 |
JP5695555B2 (ja) * | 2011-01-28 | 2015-04-08 | オークマ株式会社 | 位置制御装置 |
JP5370392B2 (ja) * | 2011-02-23 | 2013-12-18 | 株式会社安川電機 | ロボットシステム、ロボット制御装置およびロボット制御方法 |
JP5488494B2 (ja) * | 2011-02-23 | 2014-05-14 | 株式会社安川電機 | ロボットシステム |
JP5929224B2 (ja) | 2012-01-20 | 2016-06-01 | セイコーエプソン株式会社 | ロボット |
JP5943676B2 (ja) * | 2012-03-30 | 2016-07-05 | 株式会社デンソーウェーブ | ロボットの制御システム及びエンコーダシステム |
JP2014176157A (ja) * | 2013-03-07 | 2014-09-22 | Toshiba Corp | モータ回転位置検出装置,洗濯機及びモータ回転位置検出方法 |
CN108621156B (zh) * | 2013-10-10 | 2021-08-03 | 精工爱普生株式会社 | 机器人控制装置、机器人***、机器人以及机器人控制方法 |
CN106063090B (zh) * | 2014-03-06 | 2019-08-13 | 索尼公司 | 传动装置及机器人手臂装置 |
EP3120979A4 (en) * | 2014-03-14 | 2017-11-08 | Sony Corporation | Robot arm device, robot arm control method and program |
JP6460697B2 (ja) * | 2014-03-27 | 2019-01-30 | キヤノン株式会社 | 角度検出方法、角度検出装置、およびロボット装置 |
US9718187B2 (en) * | 2014-06-11 | 2017-08-01 | Canon Kabushiki Kaisha | Robot controlling method, robot apparatus, program, recording medium, and method for manufacturing assembly component |
US9815202B2 (en) * | 2014-07-09 | 2017-11-14 | Canon Kabushiki Kaisha | Control method for robot apparatus, computer readable recording medium, and robot apparatus |
JP2017226045A (ja) | 2016-06-23 | 2017-12-28 | セイコーエプソン株式会社 | ロボット、制御装置およびロボットシステム |
JP6915395B2 (ja) * | 2017-06-16 | 2021-08-04 | セイコーエプソン株式会社 | 制御装置、ロボットシステム、テーブル作成方法およびロボット制御方法 |
JP6708684B2 (ja) * | 2018-03-20 | 2020-06-10 | ファナック株式会社 | 駆動モータおよび減速機を備えるロボットの関節部の構造 |
-
2017
- 2017-06-09 JP JP2017114064A patent/JP2018202589A/ja active Pending
-
2018
- 2018-06-07 CN CN201810585843.0A patent/CN109015628B/zh active Active
- 2018-06-08 US US16/003,333 patent/US10994414B2/en active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020179465A (ja) * | 2019-04-25 | 2020-11-05 | セイコーエプソン株式会社 | 制御装置、制御方法、およびロボットシステム |
JP7310271B2 (ja) | 2019-04-25 | 2023-07-19 | セイコーエプソン株式会社 | 制御装置、制御方法、およびロボットシステム |
Also Published As
Publication number | Publication date |
---|---|
US10994414B2 (en) | 2021-05-04 |
CN109015628A (zh) | 2018-12-18 |
US20180354122A1 (en) | 2018-12-13 |
CN109015628B (zh) | 2023-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20180361592A1 (en) | Control device and robot system | |
CN107533325B (zh) | 机械运动轨迹测定装置 | |
US9999974B2 (en) | Robot | |
JP5652042B2 (ja) | ロボット装置、ロボット装置の制御方法およびプログラム | |
JP5417161B2 (ja) | ロボットの制振方法およびロボットの制御装置 | |
JP3883544B2 (ja) | ロボット制御装置およびロボットの制御方法 | |
US9874865B2 (en) | Control method and control device | |
KR101688344B1 (ko) | 다관절 로봇의 위빙 제어 장치 | |
JP2014028407A (ja) | ロボットの制御装置、制御方法、およびロボット | |
JPS63314606A (ja) | 多関節ロボットの制御装置 | |
JP6575200B2 (ja) | ロボット、制御装置およびロボットシステム | |
JP2011224662A (ja) | ロボット制御装置の補正パラメータ同定装置 | |
JP2018202589A (ja) | 制御装置、ロボット、およびロボットシステム | |
JP2004328829A (ja) | モータの制御装置及び制御方法 | |
JP2623535B2 (ja) | 電動機械の防振制御装置 | |
JP6998514B2 (ja) | ロボット制御装置 | |
JP2015104789A (ja) | ロボット | |
JP6333495B1 (ja) | サーボ制御装置 | |
JP7310358B2 (ja) | オーバーシュート量検出方法、オーバーシュート量検出システム、ロボットシステムおよびオーバーシュート量調整方法 | |
JP3355420B2 (ja) | 産業用ロボットの制御方法 | |
JPH0933369A (ja) | 電動モータ系の外力・外トルク検出方法並びにその装置 | |
JPH04343690A (ja) | 多関節マニピュレータの関節摩擦補償方法 | |
JP7121599B2 (ja) | ロボットシステム及びロボットシステムの制御方法 | |
JP2011058820A (ja) | 角速度センサーの補正方法 | |
WO2020009237A1 (ja) | ロボットシステム及びロボットシステムの制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD05 | Notification of revocation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7425 Effective date: 20180910 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20190402 |