JP2019098469A - ロボット装置、およびロボット装置の制御方法 - Google Patents

ロボット装置、およびロボット装置の制御方法 Download PDF

Info

Publication number
JP2019098469A
JP2019098469A JP2017232096A JP2017232096A JP2019098469A JP 2019098469 A JP2019098469 A JP 2019098469A JP 2017232096 A JP2017232096 A JP 2017232096A JP 2017232096 A JP2017232096 A JP 2017232096A JP 2019098469 A JP2019098469 A JP 2019098469A
Authority
JP
Japan
Prior art keywords
encoder
joint
robot
robot arm
absolute
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.)
Granted
Application number
JP2017232096A
Other languages
English (en)
Other versions
JP7118628B2 (ja
JP2019098469A5 (ja
Inventor
篠 健治
Kenji Shino
健治 篠
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2017232096A priority Critical patent/JP7118628B2/ja
Priority to US16/181,823 priority patent/US11413759B2/en
Publication of JP2019098469A publication Critical patent/JP2019098469A/ja
Publication of JP2019098469A5 publication Critical patent/JP2019098469A5/ja
Application granted granted Critical
Publication of JP7118628B2 publication Critical patent/JP7118628B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/088Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J17/00Joints
    • B25J17/02Wrist joints
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J18/00Arms
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/0009Constructional details, e.g. manipulator supports, bases
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Manipulator (AREA)

Abstract

【課題】エンコーダエラーによるロボットアームの停止、保守などの可能性を低減し、作業、生産の効率を低下させることなく、ロボットアームの位置姿勢を安定して正確に制御できるようにする。【解決手段】ロボットアーム(100)の関節(J2)に、第1および第2のエンコーダ(235、236)を配置する。CPU301は、これらエンコーダの検出結果に基づきロボットアームの関節の動作を制御する。その場合、CPU301は、第2のエンコーダ(236)の検出部に関する読み取りエラーの有無を判定し、その結果、読み取りエラーが有ると判定した場合、第1のエンコーダ(235)の検出結果を用いて、関節(J2)を駆動し、第2のエンコーダの位置情報を再検出する。【選択図】図2

Description

本発明は、関節にエンコーダを備えたロボット装置、およびロボット装置の制御方法に関する。
製品(部品)を製造する生産ラインにおいて、多関節のロボットアームを備えたロボット装置が生産装置として用いられることがある。この種のロボットアームは、先端に設けられたエンドエフェクタ、例えば把持装置としてのフィンガーやハンド、その他の工具などのツールによってワークを操作し、工業製品やその部品などの物品を製造する。
この種のロボットアームの躯体は、リンクとリンクを結合する関節を備える。このうち、関節の機構は、例えばACサーボモータやDCブラシレスサーボモータ等のサーボモータと、その出力側に設けられた減速機とを備え、2つのリンクの相対位置(角度)を制御する。この減速機は、高出力の駆動トルクを得るため、また、リンクとサーボモータとの間で回転速度(回転数)を変換するために配置される。
ロボット制御装置は、ロボットアームの基準部位(例えばアームの先端のTCP)の位置、姿勢を制御するために、特定の関節の位置(関節角度)を逆運動学的な計算によって得られた位置(角度)に制御する。この時、関節を駆動する減速機の入力側ないし出力側に配置されたエンコーダが位置(角度)制御に用いられる。この種のエンコーダとしては、減速機の入力側、例えば駆動源のモータの回転軸に直結されたエンコーダ(以下、「入力軸エンコーダ」という)がある。
入力軸エンコーダを用いた制御では、モータに接続した減速機のねじれやガタが検出されないため、ロボットアームの先端の位置誤差が発生する。また、駆動系(伝導系ないし伝達系)には、モータと減速機との間にタイミングベルトなどが使用されることもあり、タイミングベルトに起因するねじれやガタにより、ロボットアームの先端の位置誤差が発生することもある。また、ロボットアームの姿勢やワークの質量が変わることでも、ロボットアーム先端の位置誤差が発生する。
そこで、減速機の出力側に配置したエンコーダ(以下、「出力軸エンコーダ」という)により、例えば関節の実角度に相当する値を検出し、それに基づきロボット制御を行うことにより、ロボットアームの先端位置の制御誤差を低減することができる。
また、減速機の入力側と出力側の双方にエンコーダを設けた構成も知られている(下記の特許文献1)。さらに、減速機の例えば入力軸と出力軸にそれぞれエンコーダを配置する構成では、両者のエンコーダの出力を組み合せて位置検出を行う構成が知られている(下記の特許文献2)。特許文献2の構成では、一方のエンコーダの位置情報が得られない場合、他方のエンコーダの位置情報を用いてエンコーダの絶対位置情報を演算する。
特許第5972346号公報 特許第5980965号公報
ロボットアームの関節に用いられるロータリーエンコーダは、パターンが形成されたスケールと、スケールのパターンから位置を読み取る例えば光学センサを用いた検出ヘッドと、を備え、両者を相対移動させて位置(角度)検出を行う。この種のエンコーダデバイスには、大別してアブソリュート型エンコーダおよびインクリメント(インクリメンタル)型エンコーダなどと呼ばれる製品がある。アブソリュートエンコーダには、例えば検出ヘッドが位相差を持って複数トラックのスケールから読み取った信号から絶対座標(位置)を読み出せるデバイスとして構成されているものがある。また、インクリメントエンコーダの場合は、その検出ヘッドとスケールが相対移動している間、相対座標(位置)に換算可能なパルス信号を出力するようなデバイスとして構成されているものがある。
これらアブソリュート、インクリメント、いずれのエンコーダ方式でも、エンコーダのスケールに傷が形成されたり、ごみが付着したりすると、検出ヘッドにより検出位置を正確に読み取ることができなくなり、読み取りエラーが発生する場合がある。エンコーダデバイスには、このような読み取りエラーを検出すると、エラー信号を発生するように構成されたものがある。
工場の生産ラインに配置されるような、いわゆる工業用のロボットアームでは、上記のようなエンコーダの読み取りエラーでロボットアームを(非常)停止させるとすれば、その間、部品、工業製品の生産を止めることになる。ロボットを停止させた場合、部品の生産を再開するためには、ロボットアームを分解してエンコーダからごみを取り除くか、スケールが損傷している場合にはエンコーダを交換する、あるいはロボットアームを交換する復旧作業が必要になる。
ロボットアームを分解してごみを取り除く場合は、工場内のクリーン度により、新たなごみがエンコーダ内に侵入する可能性があった。また、ロボットアームごと交換する場合は、ロボットアームの取り付け誤差やロボットアームの製造のばらつきがあるため、再教示(ロボットの動作位置の設定)が必要となる可能性があり、復旧時間が余計にかかる。いずれにしても、エンコーダの読み取りエラーが生じたらロボットを停止させると、生産ラインを頻繁に止めて復旧作業を行わなければならず、生産システムの生産効率が低下する問題がある。
そこで、例えば特許文献2のように、第1の(例えば入力軸)エンコーダ、および第2の(例えば出力軸)エンコーダを配置する構成では、一方のエンコーダの出力で他方のエンコーダの出力を補正することが考えられる。しかしながら、上記のように、出力軸エンコーダを搭載する目的はモータに接続した減速機のねじれやガタ等の影響による位置誤差を含めた正確な位置情報を得ることである。従って、例えば入力軸エンコーダの絶対位置情報に基づき関節の位置(角度)を求めようとしても、減速機のねじれやガタによる誤差を免れることができない。そのため、ロボットアームの位置姿勢の制御の誤差が大きくなる可能性がある。
そこで、例えば関節の位置(角度)を実測する出力軸エンコーダの読み取りエラーが発生した場合には、可能な限り速やかに、またロボット動作に影響せず、出力軸エンコーダの出力状態を復旧できるのが望ましい。その場合、入力軸エンコーダの出力のように本来代用すべきではない検出値を用いて出力軸エンコーダの検出値を補正するような処理を行わずに済むのが望ましい。
本発明の課題は、エンコーダエラーによるロボットアームの停止、保守などの可能性を低減し、作業、生産の効率を低下させることなく、ロボットアームの位置姿勢を安定して正確に制御できるようにすることにある。
上記課題を解決するため、本発明においては、関節および前記関節により連結されたリンクを備えたロボットアームと、前記関節に配置され、パターンが形成された被読取領域を有するスケールと、前記スケールに対して相対的に移動し、該移動した位置において前記被読取領域のパターンを読み取る検出部と、を有し、前記関節の位置情報を検出する第1および第2のエンコーダと、前記第1および第2のエンコーダの検出結果に基づき前記ロボットアームの関節の動作を制御する制御部と、を備え、前記制御部は、前記第2のエンコーダの検出部の読み取りエラーが発生した場合、前記第1のエンコーダの検出結果に基づいて前記ロボットアームの前記関節を駆動して前記第2のエンコーダの位置情報を再検出するエンコーダ再検出処理を実行する構成を採用した。
上記構成によれば、エンコーダエラーによるロボットアームの停止、保守などの可能性を低減し、作業、生産の効率を低下させることなく、ロボットアームの位置姿勢を安定して正確に制御できる、という優れた効果がある。
本発明を実施可能なロボット装置を示す斜視図である。 図1の制御部のブロック図である。 図1のロボットアームの関節を示す部分断面図である。 光学式エンコーダの全体構造を示す説明図である。 光学式エンコーダのセンサ部の構造を示す説明図である。 光学式エンコーダのスケールの構造を示す説明図である。 ごみがスケールに付着した場合のごみとスケールの関係を示す説明図である。 実施形態1に係る制御系のブロック図である。 実施形態1に係る制御手順を示したフローチャート図である。 実施形態1に係るエンコーダ値と先端位置との関係を示した説明図である。 実施形態2に係る制御系のブロック図である。 実施形態2に係る制御手順を示したフローチャート図である。 実施形態3に係る制御系のブロック図である。 実施形態3に係る制御手順を示したフローチャート図である。 実施形態2に係る教示点と教示軌道を示す説明図である。 実施形態4に係る制御系のブロック図である。 実施形態4に係る制御手順を示したフローチャート図である。
以下、添付図面を参照して本発明を実施するための形態につき説明する。なお、以下に示す構成はあくまでも一例であり、例えば細部の構成については本発明の趣旨を逸脱しない範囲において当業者が適宜変更することができる。また、本実施形態で取り上げる数値は、参考数値であって、本発明を限定するものではない。
<実施形態1>
(1)ロボット装置の構成の説明
図1は、本発明の実施形態1に係るロボット装置を示す斜視図である。ロボット装置100は、ロボット200と、ロボット200の動作を制御する制御部としての制御装置300と、ユーザーの操作によりロボット200の動作を教示する教示部としてのティーチングペンダント400と、を備えている。ロボット200は、多軸の垂直多関節型のロボットアーム201と、ロボットアーム201の先端に取り付けられた、エンドエフェクタとしてのロボットハンド202と、を備える。
ロボットアーム201は、作業台に固定されるベース部203と、変位や力を伝達する第1〜第6のリンク204〜209が、第1〜第6の関節J1〜J6で、屈曲または回転可能に連結されている。この例では、ロボットアーム201は、屈曲する3軸と回転する3軸の6軸の関節J1〜J6で構成されている。ここで、屈曲とは2つのリンクの結合部のある点で折れ曲がること、回転とは2つのリンクの長手方向の回転軸でリンクが相対的に回ることをいい、それぞれを屈曲部、回転部と呼ぶ。
ロボットアーム201は、6つの関節J1〜J6から構成され、この例では、第1、第4、第6の関節J1、J4、J6が回転部を、また、第2、第3、第5の関節J2、J3、J5が屈曲部を構成している。ロボットハンド202は、第6のリンク209(先端リンク)に結合され、ワークW1(第1のワーク)の組付け作業を行うエンドエフェクタであり、複数のフィンガー220を有する。複数のフィンガー220を閉動作させることにより、ワークW1を把持することができ、複数のフィンガー220を開動作させることにより、ワークW1を把持解放することができる。このようなロボットハンド202による操作により、例えば、ワークW1(第1のワーク)をワークW2(第2のワーク)に装着するような組立作業を行うことができる。これにより、ワークW1、ワークW2を含む物品(任意の工業製品、あるいはその部品)を製造することができる。
ロボットアーム201の各関節J1〜J6には、これら関節を駆動する複数(6つ)の関節駆動部230がそれぞれ設けられる。図1では、関節駆動部230は、便宜上、関節J2にのみ破線によって図示し、他の関節J1、J3〜J6については図示を省略している。しかしながら、他の関節J1、J3〜J6にも、同様の構成の関節駆動部230が配置される。なお、本実施形態では、関節J1〜J6の全てが関節駆動部230で構成される場合について説明するが、関節J1〜J6のうち少なくとも1つが関節駆動部230で駆動されるよう構成されていればよい。
以下、関節J2の関節駆動部230を例にとり、ロボットアーム201の各関節駆動部の構成例につき説明する。他の関節J1、J3〜J6の関節駆動部230には、サイズや性能が異なる場合もあるが、以下に示すものと同様に構成された関節駆動部230が設けられるものとする。
(2)関節J2における関節駆動部230の構成
図3は、ロボットアーム201の関節J2の部分断面を示している。関節駆動部230は、電磁モータである回転モータ(以下、単に「モータ」という)231と、このモータ231の回転軸232の回転を減速する減速機233(変速機)と、を備える。モータ231は、例えばACサーボモータのようなサーボモータから構成することができる。
関節駆動部230には、モータ231の回転軸232ないし減速機233の入力軸のうちいずれか一方に入力軸角度検出部を設ける。この例では、モータ231の回転軸232の回転角度を検出する入力軸角度検出部として、入力軸エンコーダ235が設けられている。また、関節駆動部230は、減速機233の出力軸の回転角度を検出する出力軸角度検出部として、出力軸エンコーダ236を備えている。
入力軸エンコーダ235は、好ましくはアブソリュート型のロータリーエンコーダから構成される。例えば、入力軸エンコーダ235は、1回転の絶対角度エンコーダ、絶対角度エンコーダの回転総数のカウンタ、およびカウンタに電力を供給するバックアップ電池などを備える。このようなバックアップ電池を設けることにより、ロボットアーム201への電源の供給がオフになっても、ロボットアーム201への電源供給のオン/オフに関係なくカウンタの回転総数値が保持される。このため、例えば、再起動後、電源オフの状態と同じ位置姿勢からロボットアーム201の制御を開始することができる。なお、この例では、入力軸エンコーダ235は、モータ231の後方(図中左側)で回転軸232に装着しているが、減速機233の入力軸に装着してもよい。
図3の出力軸エンコーダ236は、図1のベース部203とリンク204のように関節を介して連結される2つのリンク間の相対角度を検出するロータリーエンコーダである。関節J2の場合、出力軸エンコーダ236は、リンク204とリンク205との間の相対角度を検出する。出力軸エンコーダ236は、例えばリンク204にそのエンコーダスケールを、また、リンク205にそのセンサユニットを配置する構成とすることができる。あるいは、リンク204、205と、出力軸エンコーダ236のエンコーダスケール、センサユニットの配置の関係は上記と逆であってもよい。
リンク204とリンク205とは、クロスローラーベアリング237を介して回転自在に結合される。モータ231は、保護用のモータカバー238で覆われている。モータ231とエンコーダ235との間には、ブレーキユニット(不図示)を設けることができる。このブレーキユニットは、例えば非給電時に制動がかかるような構成とする。このようなブレーキユニットによって、例えば電源オフ時のロボットアーム201の姿勢を保持することができる。
減速機233には、小型軽量で減速比の大きい波動歯車減速機を用いることができる。減速機233は、モータ231の回転軸232に結合された、入力軸であるウェブジェネレータ241と、リンク205に固定された、出力軸であるサーキュラスプライン242と、を備えている。なお、サーキュラスプライン242は、リンク205に直結されているが、リンク205に一体に形成されていてもよい。
また、減速機233は、ウェブジェネレータ241とサーキュラスプライン242との間に配置され、リンク204に固定されたフレクスプライン243を備えている。フレクスプライン243は、ウェブジェネレータ241の回転に対して減速比Nで減速され、サーキュラスプライン242に対して相対的に回転する。従って、モータ231の回転軸232の回転は、減速機233で1/Nの減速比で減速され、フレクスプライン243が固定されたリンク204に対してサーキュラスプライン242が固定されたリンク205を相対的に回転させる。これにより、関節J2の角度が制御される。
ここで、入力軸エンコーダ235は、バックラッシュやねじれ、歪みなどの誤差が生じ得る減速機233の前段(入力側)に配置され、その検出値から減速比などを用いて計算した関節J2の関節角度(位置情報)は、上記誤差の影響を受ける。これに対して、出力軸エンコーダ236は、減速機233の後段(出力側)に配置されており、減速機233のバックラッシュやねじれ、歪みなどが作用した後の、関節J2の関節角度(位置情報)の実測値を検出できる。このため、出力軸エンコーダ236を用いることにより、減速機233のバックラッシュやねじれ、歪みなどの影響を受けずに、関節J2の関節角度(位置情報)を検出し、それに基づき、リンク205の位置(角度)を高精度に制御することができる。
(3)制御装置300の構成
図2は、ロボット装置100の制御装置300の構成を示している。同図の制御装置300は、制御部(演算部)としてのCPU(Central Processing Unit)301を備えている。また、制御装置300は、記憶部として、ROM(Read Only Memory)302、RAM(Random Access Memory)303、HDD(Hard Disk Drive)304を備えている。また、制御装置300は、記録ディスクドライブ305および各種のインターフェース311〜315を備えている。
CPU301には、ROM302、ROM303、HDD304、記録ディスクドライブ305および各種のインターフェース311〜315が、バス316を介して接続されている。ROM302には、BIOS等の基本プログラムが格納される。HDD304などを設けない場合には、ROM302は、CPU301に後述の制御を実行させるためのプログラム320を格納する記憶手段として用いてもよい。RAM303は、CPU301の演算処理結果等、各種データを一時的に記憶するために用いられる。
HDD304は、CPU301の演算処理結果や外部から取得した各種データ等を記憶する記憶装置を構成する。HDD304は、例えばハードディスクドライブから構成するが、SSD(Solid State Disk)などを用いてもよい。また、HDD304には、CPU301に後述の制御を実行させるためのプログラム320を格納しておくことができる。また、HDD304にはティーチングペンダント400でユーザーにより設定された出力軸エンコーダの角度データを含んだ教示位置情報を格納しておくことができる。CPU301は、HDD304(あるいはROM302)に記録(格納)されたプログラム320に基づいてロボット制御方法の各工程を実行する。記録ディスクドライブ305は、記録ディスク321に記録された各種データやプログラム等を読み出すことができる。
なお、後述の制御手順を実現するためのCPU301の制御プログラムは、HDD304やROM302(の例えばEEPROM領域)のような記憶部に格納しておくこともできる。その場合、後述の制御手順を実現するためのCPU301の制御プログラムは、ネットワークなどを介して、上記の各記憶部に供給し、また新しい(別の)プログラムに更新することもできる。あるいは、後述の制御手順を実現するためのCPU301の制御プログラムは、各種の磁気ディスクや光ディスク、フラッシュメモリなどの記憶手段と、そのためのドライブ装置を経由して、上記の各記憶部に供給し、またその内容を更新することができる。上述の制御手順を実現するためのCPU301の制御プログラムを格納した状態における各種の記憶手段や記憶部は、本発明の制御手順を格納したコンピュータ読み取り可能な記録媒体を構成することになる。
ロボットアーム201の教示部を構成するティーチングペンダント400は、インターフェース311に接続されている。このティーチングペンダント400は、ユーザーの入力操作により、ロボット200を教示する教示点、即ち各関節J1〜J6の目標関節角度(角度指令値)を指定するために用いられる。教示点のデータ(教示データ)は、インターフェース311およびバス316を通じてCPU301、あるいはHDD304に出力される。CPU301は、ティーチングペンダント400またはHDD304から教示データの入力を受け、教示動作中のアーム制御などを行うことができる。また、CPU301は、HDD304などに格納された教示済みの教示データの通りに、ロボットアーム201の動作を再現させることができる。これにより、ロボットアーム201に、例えば物品、部品の製造動作を行わせることができる。
上記の入力軸エンコーダ235は、インターフェース312に接続され、出力軸エンコーダ236は、インターフェース313に接続されている。これら第1、第2のエンコーダ(235、236)からは、例えば検出した角度検出値を示す信号が出力される。エンコーダ(235、236)がアブソリュートエンコーダ機能を有する場合は、例えば、所定の原点からの絶対角度値データが刻出力される。ただし、第1、第2のエンコーダ(235、236)がインクリメント(インクリメンタル)エンコーダ機能を有する場合は、例えば、このインクリメント(インクリメンタル)出力は、パルス信号である場合もある。CPU301は、インターフェース312、313およびバス316を介して入力軸、出力軸のエンコーダ(235、236)の出力パルス信号の入力を受けつける。
表示部を構成する表示装置(モニタ)500は、インターフェース314に接続されており、CPU301の制御に基づき、文字や画像の表現によって種々のデータ表示を行う。
インターフェース315には、モータ駆動部701が接続されている。CPU301は、教示データに基づき、モータ231の回転軸232の回転角度の制御量を示す駆動指令データを所定時間間隔でバス316およびインターフェース315を介してモータ駆動部701に出力する。
モータ駆動部701は、CPU301から入力を受けた駆動指令に基づき、例えば、モータ231への電流の出力量を演算し、モータ231へ電流を供給し、関節J1〜J6の関節角度制御を行う。そして、モータ231は、モータ駆動部701から電力供給を受けて駆動トルクを発生し、減速機233の入力軸であるウェブジェネレータ241にトルクを伝達する。減速機233において、出力軸であるサーキュラスプライン242は、ウェブジェネレータ241の回転に対して1/Nの回転数で回転する。これにより、リンク205がリンク204に対して相対的に回転する。CPU301は、モータ駆動部701を介して、関節J1〜J6の関節角度が目標関節角度となるように、モータ231による関節J1〜J6の駆動を制御する。
なお、バス316には、不図示のインターフェースを介して、書き換え可能な不揮発性メモリや、外付けHDD等の外部記憶装置、といった他の周辺機器(不図示)が接続されていてもよい。
(4)出力軸エンコーダ236の動作
出力軸エンコーダ236は関節J1〜J6にそれぞれ配置される。図4に出力軸エンコーダ236の構造の例を示す。スケールトラック605には円周方向に反射膜のあるスケールの部位と、反射膜の無い部位が交互に並んだゼブラパターンが形成されており、センサユニット604でこれを読み取ると、センサユニット604にはパルス信号が得られる。例えば、センサユニット604が出力したパルス信号の数をカウントすることにより現在の角度(位置)情報を得ることができる。なお、ここでは、出力軸エンコーダ236に言及してエンコーダの構成を説明しているが、入力軸エンコーダ235にも、同等の構成を適用することができる。
図5は、出力軸エンコーダ236(入力軸エンコーダ235も同様)に用いられるエンコーダデバイスの一般的な構成を示している。図5の左上に示したエンコーダは、スケール602と、光源601および受光素子603を一体的に構成したセンサユニット604を備える。このうち、センサユニット604は、例えば発光ダイオードなどの光源601と、フォトダイオードアレイを用いた受光素子603で構成される。スケール602は、例えば、円形のガラス基板上に反射膜を成膜することによって構成される。ただし、スケール602の基板はガラスに限るものではなく、樹脂などから構成されていてもよい。光源601の発光ダイオードは例えば定電流回路を介して駆動することにより、安定した光出力を得ることができる。
図5において、光源601の照射する光束はスケール602へ向かい、反射膜が形成されている位置では反射し、反射膜が形成されていない位置では反射が起きない。スケール602上に反射膜がある場合、光源601からの光束はスケール602で反射し、その反射光が受光素子603で受光される。受光素子603の出力を増幅し、適当なAD変換処理を行うことにより、反射膜がある場合はHi、反射膜が無い場合はLoとなるようにデジタルパルス信号へ変換することができる。
また、エンコーダデバイスでは、図5の右下に示したような信号処理部651を含むものがある。この例では、信号処理部651は、検出処理部652、および位置信号出力部654を備えている。信号処理部651は、受光素子603から得られたデジタルパルス信号から、アブソリュート、ないしインクリメント(インクリメンタル)形式の出力仕様に適合した位置(角度)信号を生成する。生成された位置(角度)信号は、位置信号出力部654を介して図2の制御系、例えばインターフェース313に送信される。
また、エンコーダデバイスでは、製品によっては、信号処理部651にエラー信号出力部655を備えているものがある。エラー信号出力部655は、受光素子603の出力信号を監視し、後述するようなエンコーダエラーを検出することができる。エラー信号出力部655がエンコーダエラーを検出した場合には所定信号形式のエラー信号を図2の制御系、例えばインターフェース313に送信する。
なお、エンコーダデバイスがエラー信号のための信号インターフェース(信号線)を有している場合は、図2の制御系ではそのインターフェース(信号線)を監視していれば良い。あるいは、信号処理部651がそのような信号インターフェース(信号線)を有しておらず、エンコーダエラーの際、位置信号出力部654から絶対(アブソリュート)位置(角度)値として、無効ないし未定義を示す特別な値を出力する仕様も考えられる。その場合には、図2の制御系では、位置信号出力部654からエンコーダエラーに相当する所定値が出力されているか否かを監視していればよい。
図2の制御系は、エンコーダデバイスがエンコーダエラー発生時に上記のようなエラー信号を発生できる場合には、このエラー信号を用いてエンコーダエラー判定(検出)を行う。例えばエンコーダ読み取りエラー判定部706(図8)は、エラー信号出力部655がエラー信号を発生しているか否かを判定するように実装すればよい。もし、エンコーダデバイスのエラー信号出力部655を利用できない場合には、エンコーダ読み取りエラー判定部706(図8)は、例えば位置信号出力部654の出力を監視することにより、後述するような態様のエンコーダエラーを検出する。
エンコーダには絶対座標が得られるアブソリュートエンコーダと、相対座標が得られるインクリメントエンコーダがある。ロボットシステムの関節で出力軸エンコーダに用いられるアブソリュートエンコーダでは、連続してアブソリュート情報を取得し続ける構成、アブソリュート情報を取得後、インクリメントエンコーダ動作する構成などがある。前者の構成では、エンコーダスケールに記録されているアブソリュート情報(絶対位置情報)を連続して取得することができる。一方、後者の構成では、エンコーダスケールに記録されているアブソリュート情報(絶対位置情報)を取得後、インクリメントエンコーダの出力をカウントし、その差分をアブソリュート情報に加算して、現在位置(角度)を取得することになる。
ここで、図6を参照して、例えば出力軸エンコーダ236に搭載されるアブソリュートトラックとインクリメントトラックの構成の一例につき説明する。この例では、スケールは、図示のように周波数の高い情報を含むピッチの細かいスケールと、周波数の低い情報を含むピッチの広いスケールを組み合わせた2トラック構成となっている。
図6でエンコーダのスケール602上には、センサユニット604によって一度に読み込まれるアブソリュートスケール(スケール読み取り範囲:被読取領域)607が配置されている。アブソリュートスケール607はインクリメントスケール606を含んでいる。図6の上下の2トラックには位相差があり、607のトラックと610のトラックの位相差から絶対(アブソリュート)位置(角度)情報を計算できる。或いは、センサユニット604側で異なる読み取り位相で2つのトラックの読み取りを行っても良い。また、周波数の低いピッチで配置されたインクリメントスケール606は単に1、0(反射、無反射)の交互の信号配置となっている。
図6のような構成において、同心円上にアブソリュートエンコーダのスケール情報とインクリメントエンコーダのスケール情報がある場合、図7に示すようにアブソリュートエンコーダの情報の方がごみや傷による影響(エラー)を受けやすい。図7のように、アブソリュートスケール607上にごみ(A)608(あるいは傷)がある場合、周波数の低いスケールは2周期あるうちの1周期がごみにより遮られるため、周波数を確定しにくい。一方、インクリメントスケールとして利用される短周期のスケール群に重なるごみ(B)609(あるいは傷)の場合は、センサユニット604は、1つのアブソリュートスケール(スケール読み取り範囲)607から5周期以上のスケールを読み取れる。従って、図示したごみ(B)609(あるいは傷)のような位置関係では、センサユニット604の受光素子603の出力から同期を取ってインクリメント(インクリメンタル)データを取得するのは困難ではない。以上のように、アブソリュートスケール動作より、インクリメントスケール動作の方がごみ(あるいは傷)などの外乱に強い傾向がある。本実施形態では、このような特性を利用した制御を行う。
(5)制御系の詳細
図8は、本実施形態の関節駆動系と、そのエンコーダ廻りの制御系の構成の一例を示している。図8の各制御ブロックは、例えば、CPU301(図2)側の制御系として実装することができる。
図8において、モータ231は上記の如く例えばACサーボモータであって、U、V、Wの各巻き線(詳細不図示)に、モータ駆動部701(図2)からPWM信号を印加することにより駆動される。図8の例では、ベルト713(とプーリ)を介してモータ231の回転力を減速機233に伝達するようになっている。このベルト713(とプーリ)の減速比は例えば1:1とする。ベルト713(とプーリ)は、チェーン(とギア)などに置換してもよいが、ベルト713(あるいはチェーン)は必ずしも必要なく、図3に示したようにモータ231と減速機233の入力軸が直結されていてもよいのはいうまでもない。
減速機233はモータ231の回転力を減速するギア列を有し、例えばそのギア比が50:1であれば、モータ231が50回転すると、減速機233の出力側に配置されている関節駆動部230が1回転することになる。前述のように関節駆動部230には出力軸エンコーダ236が配置され、関節駆動部230の角度を読み取ることができる。
入力軸エンコーダ235はモータ231の回転角度を検出するよう配置され、50:1の減速機の場合、関節駆動部230が1回転するとき50回転する必要がある。そこで、入力軸エンコーダ235は50回転以上の多回転角度を検出する事ができるアブソリュートエンコーダが用いられる。
モータ制御部702はPID制御を行うフィードバック制御部で、近年は主にマイコンによりソフトウエア制御を行う。出力軸エンコーダ制御部704は出力軸エンコーダ236を制御する。出力軸エンコーダ制御部704は、図6のように出力軸エンコーダ236のスケールに配置された、疎、密配置のトラックの組合せから得られる信号絶対角度を算出し、出力軸エンコーダ236をアブソリュートエンコーダとして動作させる。また、入力軸エンコーダ制御部703は入力軸エンコーダ235を制御するためのもので、入力軸エンコーダ235の出力に基づき、エンコーダの絶対位置の記憶、エラー判定を行う。
なお、図8では、上述(あるいは下記)の各エンコーダのための制御部や判定部(703、704、706、707)は、エンコーダ(235、236)とは別のブロックで、あたかもCPU301(図2)側の制御系を構成するかのように図示してある。しかしながら、図8の図示は便宜上のものに過ぎない。例えば、これら制御部や判定部(703、704、706、707)は、エンコーダ(235、236)を構成するエンコーダデバイスの一部として実装されていても構わない。
さらに、図8の教示点記憶部709はロボットアーム201の先端が移動する教示点(群)を記憶している。教示点記憶部709は、例えばロボットアーム201の教示データを格納するHDD304などによって構成される。
教示軌道生成部708は教示点記憶部709に格納された教示点(群)に基づきロボットアーム201の各関節J1〜J6の関節角度(関節位置)情報を算出し、軌道制御部705に出力する。軌道制御部705は、入力軸エンコーダ制御部703および出力軸エンコーダ制御部704の出力から求めた位置(角度)情報と、教示軌道生成部708が出力する軌道情報に基づきモータ制御部702の回転量を決定する制御情報を生成する。
エンコーダデバイスが上記のようなエラー信号出力部655(図5)を備えている場合には、エンコーダ読み取りエラー判定部706は、エラー信号出力部655が出力軸エンコーダ制御部704に出力するエラー信号によりエラー判定を行う。エラー信号出力部655を利用できない構成においては、エンコーダ読み取りエラー判定部706は、例えば出力軸エンコーダ236が出力軸エンコーダ制御部704に対して出力する絶対位置情報の値を判別することなどにより、エラー判定を行う。以下では、出力軸エンコーダ236がエラー信号を出力できる構成を例に説明する。
出力軸エンコーダ制御部704は、出力軸エンコーダ236のエラー信号線の状態に応じて、出力軸エンコーダ236の受光素子603受光レベルが十分でない場合や、目的の周波数成分を得られない場合等にエラー情報を出力する。エンコーダ読み取りエラー判定部706は、このエラー情報に基づきエラー判定を行う。
本実施形態では、エンコーダ読み取りエラー判定部706が出力軸エンコーダ236(第2のエンコーダ)でエンコーダエラー(読み取りエラー)が発生していることを検出すると、出力軸エンコーダ再取得制御部707を動作させる。
この出力軸エンコーダ再取得制御部707は、軌道制御部705へロボットアーム201を(微小量)動作させて、出力軸エンコーダ値の「再取得」を行う。この再取得は、例えば、出力軸エンコーダ236(第2のエンコーダ)でエンコーダ(読み取り)エラーが発生せずに当該のエンコーダから位置情報を検出できるまで位置情報の読み取りを試行する、エンコーダ再検出処理である。
軌道制御部705は、エンコーダ(読み取り)エラーが発生していない通常動作では、教示点記憶部709の情報に基づき、教示軌道生成部708の軌道に沿ってロボットアームの軌道を制御する。
一方、エンコーダ読み取りエラー判定部706でエンコーダエラーが検出(エラー判定処理)されると、軌道制御部705は、上記の出力軸エンコーダ値の「再取得」のためのロボットアーム201駆動を行う。その場合、軌道制御部705は、「第1のエンコーダ」の検出結果に基づいて関節駆動部230を駆動して、出力軸エンコーダ236(第2のエンコーダ)の位置情報を再検出させる。
例えば、この出力軸エンコーダ(アブソリュート)値の「再取得」では、通常動作時の動作と同様に、入力軸エンコーダ235は、減速機233の入力側の制御量を決定するために用いられる。このため、入力軸エンコーダ235は、出力軸エンコーダ値の「再取得」に用いられる第1のエンコーダ(の1つ)と考えてよい。
また、この出力軸エンコーダ値の「再取得」において、「第2のエンコーダ」の位置情報を再検出するために軌道制御部705が利用できる他のエンコーダとしては、例えば、出力軸エンコーダ236のインクリメンタル出力が考えられる。例えば、出力軸エンコーダ236に図6、図7で説明したようなトラック構成のスケールを有し、アブソリュート出力、およびインクリメンタル出力が可能なエンコーダデバイスを用いる。その場合、アブソリュート、およびインクリメンタル出力が可能であり、その場合、出力軸エンコーダ236内に、アブソリュートエンコーダ(第2のエンコーダ)と、インクリメントエンコーダ(第1のエンコーダ)が含まれている、と考えてもよい。そして、これらのうち、関節の実角度(位置)制御に利用するアブソリュートエンコーダ(第2のエンコーダ)でエラーが発生した時は、インクリメントエンコーダ(第1のエンコーダ)を利用して第2のエンコーダ値の「再取得」を行う。この場合、下記の制御(例えば図9)では、出力軸エンコーダ236のインクリメントエンコーダ(第1のエンコーダ)値は、第2のエンコーダ値の「再取得」が行えたか否かの確認に利用されている。
上記のようにインクリメントエンコーダ(第1のエンコーダ)は、スケールのごみや傷などの外乱に強い特性がある。従って、出力軸エンコーダ236のアブソリュートエンコーダ(第2のエンコーダ)でエラーが発生していても、インクリメントエンコーダ(第1のエンコーダ)によって減速機233の出力軸の側の位置(角度)情報を精度よく取得できる。これにより、信頼性の高い第2のエンコーダ値の「再取得」が可能となる。この場合には、例えば、出力軸エンコーダ236のインクリメントスケール606(図6)のカウント値をモニタしながらアブソリュートトラックの1トラック(607)分を移動させ、再度、エンコーダ読み取りエラー判定部706で読み取りエラー判定を行う。この第2のエンコーダ値の「再取得」は、例えばエンコーダ読み取りエラー判定部706がエンコーダエラーを検出しなくなるまで試行する。
ここで、図2の制御系におけるロボット制御手順のうち、特にエンコーダ制御に係わる部分を図9に示す。図示の手順は、例えばCPU301(制御部)の制御プログラムとして、ROM302やHDD304に格納しておくことができる。
図9において、ロボットの電源を投入(ON)すると、制御装置300(図2)はロボットアーム201内の各軸の入力軸エンコーダ235をイニシャライズし、アブソリュートデータを取得する(ステップS800)。続いて、出力軸エンコーダ236をイニシャライズし、アブソリュートデータを取得する(ステップS801)。
そして、出力軸エンコーダ236のアブソリュート出力にエンコーダエラーが生じているか否かが判定される(ステップS802)。このエンコーダエラー判定は、例えば上記のエンコーダ読み取りエラー判定部706によって行う。
読み取りエラーが無い場合は、出力軸エンコーダ原点セットを行う(ステップS806)。ここでは、出力軸エンコーダ236はアブソリュートデータを原点として記憶し、その位置からインクリメント動作を行い絶対座標をカウントする。この絶対座標のカウントは通常のインクリメントまたはデクリメントカウンタで行えばよい。原点セット(S806)後は、入力軸エンコーダ235から回転角を読み込み(ステップS807)、教示点データに基づきロボットアーム201に通常動作を行わせる(ステップS808)。そして、例えば教示位置精度の必要なロボットアーム201動作を行う工程では出力軸エンコーダ236から回転角を読み込み(ステップS809)を行い、それに基づきロボットアーム201を動作させる。このような動作(ステップS807〜S809のループ)を繰り返すことによって、ロボットアーム201を用いて物品の精密組み立てを行うことができる。
ところで、出力軸エンコーダ236に含まれるインクリメントエンコーダに関しても、素子不良等により受光素子603の出力が低下し、出力軸エンコーダ236がエラー信号を出力する場合もある。この場合を考慮して、図9ではステップS807〜S809のループの途中にステップS816を配置してある。このステップS816は、出力軸エンコーダ236のインクリメント値読み込みエラーを検出するものである。このステップS816がインクリメント値読み込みエラーを検出すると、出力軸エンコーダ236のイニシャライズを行うステップS801に復帰する。ステップS816がインクリメント値読み込みエラーを検出していなければ、ステップS807〜S809のループが続行される。
一方、ステップS802で、出力軸エンコーダ236のアブソリュート出力にエンコーダエラーが検出されている場合は、ステップS803に移行する。ステップS803では、入力軸エンコーダ235から回転角を読み込み、読み取った入力軸回転角に基づき関節軸を(微小量)回転させる(ステップS804)。そして、出力軸エンコーダ236の出力するインクリメントデータが、例えば、出力軸エンコーダのアブソリュートデータの1トラック分(図6、図7の607の1つ分)、に相当する量、変動した(動いた)か否かを確認する(ステップS805)。なお、上述のように出力軸エンコーダ236のインクリメントスケール606(図6)は、アブソリュートスケール607よりスケール上のごみや傷などの外乱に強い。そのため、ステップS805の判定は、出力軸エンコーダ236の出力するインクリメントデータを用いることにより、正確かつ、確実に実行できる。
このステップS805の判定が肯定された場合は、ステップS801に復帰し、再度、出力軸エンコーダ236のイニシャライズとアブソリュートデータを取得する。その後、ステップS802において、上述の通りエンコーダエラー判定を行い、エンコーダエラーが検出されなくなるとステップS806以降の通常動作が行われる。ステップS802でエンコーダエラーが検出されている間は、上記のステップS803〜S805の再検出動作が繰り返される。
以上のようにして、本実施形態では、出力軸エンコーダ236(第2のエンコーダ)のアブソリュートデータ出力にエンコーダ(読み取り)エラーが生じた場合、絶対位置(角度)の再検出(再取得)が可能である。一般に、アブソリュートスケールはどの位置で取得しても、絶対位置(角度)情報を取得できる。例えば、絶対座標を取得した原点位置(S806)からインクリメントスケール606によりカウントすれば、関節の出力軸上のどの位置(角度)の絶対座標(角度)も取得できる。従って、ある関節位置(角度)で出力軸エンコーダ236のアブソリュートデータ取得に失敗した時、入力軸エンコーダ235を用いながら関節を動作させると、別の関節位置(角度)で出力軸エンコーダのアブソリュートデータを再取得できる。そして、アブソリュートデータを再取得後は、例えばインクリメント動作によって、引き続き関節位置(角度)の絶対座標(角度)を出力軸エンコーダ236から取得できる。このようにして、本実施形態によれば、関節のエンコーダ(読み取り)でロボットアーム201、従って生産ライン(生産システム)を停止させる必要がなくなる。これにより、ロボットアーム201が配置された生産ラインの装置の稼働率が上がり、結果として物品(工業製品、ないしその部品の)生産効率を大きく向上させることができる。
図10は、ロボットアーム201の関節J3から先端の(ワークW2を把持している)ロボットハンド202の中心部までの寸法の一例を示しており、この例ではその寸法は100mm程度である。この場合、一般的な減速機233の減速比を考慮すると、出力軸エンコーダ再取得におけるアブソリュートデータ1トラック(607)の1つ分に相当するロボットアーム201の先端の移動量201aは、図10に示すように約1.5mm程度に過ぎない。ロボットアーム201の用途にもよるが、この程度のオーダでエンコーダ再取得のためにアームを1ないし数回程度、動作させても、本来のロボット軌道からの誤差範囲内に収まっている場合が多い。そのため、たとえ本来のロボット軌道を無視してエンコーダ再取得を行っても、ロボット動作には殆ど影響を与えずに済む。また、例えば、ロボットアーム201のホームポジション(初期の位置姿勢)などの設定によって周囲の障害物などと干渉しないような位置姿勢を選ぶことにより、再取得のために10〜数10トラック(607:図6、図7)分の移動は可能になると考えられる。
また、再取得のために当該の関節を動作させる上限回数(リミット)を、例えば上記のアブソリュートデータ1トラック(607:図6、図7)の数などを単位として10〜数10トラック分を設定しておいてもよい。このような再取得のために当該の関節を動作させる上限回数(リミット)を決めておけば、その上限回数、再取得のための関節動作を行っても、絶対位置(角度)を得られない場合にロボットアームを非常停止させるようなエラー処理を行える。
(6)実施形態1の効果
以上に示したように、本実施形態1によれば、ロボット関節の出力軸エンコーダ236(第2のエンコーダ)のスケール上にごみ、塵埃や傷が存在し、エンコーダ(読み取り)エラーが生じた場合でも、絶対位置(角度)の再検出(再取得)が可能である。本実施形態では、この絶対位置(角度)の再検出(再取得)は、入力軸エンコーダ235(第1のエンコーダ)で減速機233の入力を調節しつつロボットアーム201の関節を(微小量)動作させることにより行う。その際、関節が動いたか否かの確認(図9ステップS805)は、出力軸エンコーダ236のインクリメント出力を利用して行う。このような制御によって、本実施形態によれば、スケール上にごみ、塵埃や傷などの無い位置まで関節が動作した時点で、出力軸エンコーダ236の絶対位置情報を再取得することができる。本実施形態によれば、出力軸エンコーダ236(第2のエンコーダ)でエンコーダ(読み取り)エラーが生じたからといって、ロボットアーム201をエラー停止させる必要がない。このため、出力軸エンコーダ236の絶対位置情報を再取得することができ、物品などの製造の工程を遅滞させることがない。
また、本実施形態では、入力軸エンコーダ235(第1のエンコーダ)の値は、出力軸エンコーダ236の絶対位置情報を再取得するまでの間、減速機233の入力量の制御に利用される。しかしながら、従来技術におけるように、入力軸エンコーダ235(第1のエンコーダ)の出力値をロボット関節の実角度(の演算値)として代用することがない。従って、本実施形態によれば、エンコーダ(読み取り)エラーが生じても、絶対位置(角度)の再検出(再取得)を繰り返し行うことにより、自動的に出力軸エンコーダ236の絶対座標を取得できる状態にロボットアームを復帰させることができる。このため、ロボットアーム201による物品の製造工程の殆どの期間、減速機のねじれやガタの影響の受けない、減速機233の出力側の絶対位置(角度)を利用して、精度の高い関節位置(角度)情報を利用できる。従って、ロボットアーム201の高精度かつ確実な動作が可能となり、物品の精密な製造動作をロボットアーム201に行わせることができる。
<実施形態2>
上記実施形態1では、出力軸エンコーダ236でエンコーダエラーが生じた場合、関節位置(角度)の絶対(アブソリュート)値の再取得を行うために、ロボット、特に当該の関節を動作させる基本制御を示した。実施形態1では、エンコーダ再取得のためにアブソリュートトラック(図6:607)の1ないし数個分の関節動作によって、スケール上のごみや傷を回避し、スケール上の絶対座標を再取得できる可能性があることを示した。そのエンコーダ再取得のためのロボット動作の態様の細部については、いくつかの異なる構成が考えられる。本実施形態2以降では、エンコーダ再取得のためのロボット動作の態様の細部について、種々の構成例を示す。
実施形態1ではエンコーダ読み取りエラー判定部706でエラーとなった場合、ロボットアーム201を、出力軸エンコーダ236のインクリメントスケール606から得られるインクリメンタル出力を監視しつつ、関節を駆動し、再取得を行った。実施形態1の再取得動作では、入力軸エンコーダ235の情報に基づき、絶対位置(角度)情報を得られるまでモータ231を駆動するものとした。
ところが、実際にロボットアーム201を工場に設置した場合、その周囲には治具、他のロボットや、建屋の躯体などの障害物が存在するのが普通である。そこで、絶対位置(角度)情報を得られること、のみを条件として、ランダムにロボットアーム201を駆動すると、上記のような障害物とアームが干渉(衝突、接触)する可能性がある。
一方、実際の設置環境でロボットアーム201を稼働させる時のロボット軌道を決定する教示点は、周辺の障害物を回避できる位置に選ばれる。即ち教示データに含まれる教示点ないしその近傍の位置では、ほぼ確実に障害物と干渉しない、と考えてよい。
そこで、本実施形態2では、ロボットアーム201の教示データ(教示情報)に含まれる教示点の位置で、出力軸エンコーダ236の絶対座標を取得する構成につき説明する。本実施形態2以降では、実施形態1の構成を基本とし、その構成と異なる部分につき説明する。実施形態1で説明済みの部材や制御については、同一の参照符号を用いて、その詳細な説明は省略するものとする。
図11は、実施形態1の図8と同様の形式で、本実施形態の制御系を機能ブロック図として示している。図11に示すように、本実施形態2では、教示軌道生成部708の出力が出力軸エンコーダ再取得制御部707に入力される。また、エンコーダ読み取りエラー判定部706の判定出力は、出力軸エンコーダ再取得制御部707の入力に接続されている。エンコーダ読み取りエラー判定部706が読み取りエラーを検出した時は、出力軸エンコーダ再取得制御部707は、教示軌道生成部708の教示点情報に基づき、アームの基準部位を例えば直近の教示点位置まで移動させる動作を行い、その位置で停止させる。即ち、本実施形態の再取得動作では、本来のロボット軌道上の次の教示点位置までの移動、を利用して、出力軸エンコーダ236のセンサユニット604がアブソリュートスケールのごみや傷のない位置を読み取れるようにする。
エラー検出に基づき、本実施形態の再取得動作を行うため、教示点位置でアームを停止させる時の動作は、通常の教示点位置での停止と同じである。即ち、軌道制御部705はモータ制御部702に対しモータ停止指令を送り、ロボットアーム201を一旦停止させる。例えば、この時、アブソリュートデータ取得を試行(イニシャライズ:下記の図12のS801)し、エンコーダ読み取りエラー判定部706の判定状態を調べる。そして、エラー判定が生じていなければ(S802〜S806)、出力軸エンコーダ制御部704が出力軸エンコーダ236の原点設定(S806)を行う。以後、出力軸エンコーダ236のモードを、例えばアブソリュートスケール607を読み込むアブソリュートモードからインクリメントスケール606を読み込むインクリメンタルモードに変更する指令を発生する。
上記の本実施形態の制御の流れを図12のフローチャートに示す。図12の表示の様式は、図9と同様であり、同一の処理ステップには、図9と同一のステップ番号を付してある。図12において、図9と異なっているのは、ステップS802でエンコーダ読み取りエラー判定部706が読み取りエラーを検出した後の分岐ステップS803〜S810〜S811の制御のみで、他の部分は図9と同一である。
読み取りエラー判定(ステップS802)でエラーとなった場合は、図9の場合と同様に、入力軸エンコーダ235からエンコーダ値を読み取る(ステップS803)。続くステップS810では、教示軌道生成部708の教示点情報に基づき、ロボットアーム201の基準部位を次の教示点へ移動させる動作を行う。ステップS803で読み込んだ入力軸エンコーダ235のエンコーダ出力は、ロボットアーム201の基準部位を教示点位置へ移動させるためのモータ231の駆動量を決定するのに用いられる。所定の駆動量、モータ231が駆動されると、ステップS811でロボットアーム201の基準部位が当該の教示点で停止する。その後、制御は図9の場合と同様にステップS801に移行する。
ステップS801では、再度アブソリュートデータの取得を行い、ステップS802に移行する。もし、ステップS802で、再度読み取りエラー判定が生じた場合は、ステップS803〜S810〜S811と進み、次の教示点へ向かってロボットアーム201を動作させる。なお、絶対位置(角度)の再検出(再取得)のための移動に教示点データを用いる場合は、エンコーダエラーの生じている関節が動かない場合も含まれる。その場合は、当該の関節が駆動されて再検出(再取得)が成功するまで、上記の制御が繰り返される。以上の動作を繰り返し、エラーがなくなれば、図9の場合と同様にステップS806に進み、出力軸エンコーダ236を原点セットして通常動作に移行する。
エンコーダエラーが無くなった場合(S802〜S806)は、出力軸エンコーダ236は、原点セット(S806)でアブソリュートデータを原点として記憶し、その位置からインクリメント動作を行い絶対座標をカウントするよう動作させる。このカウントは通常のインクリメントまたはデクリメントカウンタの双方向いずれでも可能である。以後、ステップS807、S808、S809とS816の制御は図9で説明したものと同様である。
以上のように、本実施形態2によれば、ロボット関節の出力軸エンコーダ236(第2のエンコーダ)のスケール上にごみ、塵埃や傷が存在し、エンコーダ(読み取り)エラーが生じた場合でも、絶対位置(角度)の再検出(再取得)が可能である。その場合、本実施形態2では、絶対位置(角度)の再検出(再取得)ではともかく特定の関節を微小量動かしてみる、という実施形態1の動作とは異なり、例えば物品製造のためのロボット動作を記述した教示点データを用いてアームを駆動する。このように絶対位置(角度)の再検出(再取得)では、ロボットアーム201を教示軌道に沿って動かすことにより、当該の関節を動作させ、教示点で出力軸エンコーダ236の絶対位置の再取得を行う。従って、ロボットアーム201が工場に設置され、周囲に障害物がある状態においても、アームが干渉する問題を生じずに出力軸エンコーダ236の絶対座標を再取得することができる。結果として、減速機のねじれやガタの影響の無い、精度の高い位置情報を取得し、それに基づきロボットアーム201を動作させることにより、例えば高精度な物品の製造が可能となる。
<実施形態3>
実施形態2ではエンコーダ読み取りエラー判定部706でエンコーダ読み取りエラーを生じた場合、ロボットアーム201を、教示軌道に沿って次の教示点へ移動し、教示点位置で出力軸エンコーダ236の再読み込みを試行する。本実施形態3では、ある教示点と次(直近)の教示点の間の教示軌道上で、出力軸エンコーダ236の再読み込みを試行する例を示す。教示点間でロボットアーム201を動作させる軌道は、何らかの補間動作によって生成される場合が多いが、ランダムに関節を動作させて再取得を行う場合より、アーム周囲の障害物との干渉を生じる可能性は大きく低下する。
図13に本実施形態の関節廻りの制御系の構成を示す。図13の図示の様式は、図11と同等であり、図13と図11の相違は、教示軌道生成部708が教示点間の補間などを行って生成した教示軌道を記憶(バッファ)する教示軌道記憶部710が配置されている点である。出力軸エンコーダ再取得制御部707は、教示軌道記憶部710を参照でき、絶対位置(角度)の再取得を行う場合の移動目標位置として、軌道上の一点を選ぶことができる。
図14は、図12や図9と同様の形式で、本実施形態3の制御の流れを示している。また、図15は、横軸に時間(mS)、縦軸に角度(ラジアン)を取り、減速機233の入力軸の関節角度を示している。図15において、比較的大きな丸印(梨子地)で示したものは、教示点記憶部709が記憶する教示点850である。図15中には3つの教示点850に相当する当該関節の位置(関節角度)が図示されている。また、小さな丸印(黒丸)は、何らかの補間処理によって教示軌道生成部708が生成した軌道上の中間軌道点851(補間点)である。
図15で示すように、教示点850と教示点850の間に中間軌道点851が生成されている場合、モータ制御部702は、中間軌道点851の角度を目標にモータ駆動部701でサーボ制御を行って、アームを当該の軌道に沿って動作させる。一般的なロボット制御では、この中間軌道点851は例えば4mS程度の時間間隔で、速度を考慮し軌道が急峻に変化しないよう減速機233の入力軸角度(目標値)が計算される場合が多い。
図13の教示軌道記憶部710には、例えば図15の教示点850と中間軌道点851を記憶させておく。この教示軌道記憶部710に格納した教示点850と中間軌道点851の情報に基づき、出力軸エンコーダ236の絶対座標を再取得することができる。
図14は、本実施形態3において、この教示軌道記憶部710に格納した教示点850と中間軌道点851の情報に基づき、出力軸エンコーダ236の絶対座標を再取得する場合の制御手順を示している。
図14は、図12(実施形態2)と同等の表示形式によるフローチャートであり、図12との相違は、ステップS810、S811の部分のみである。
読み取りエラー判定(ステップS802)でエラーとなった場合は、図9、図12の場合と同様に、入力軸エンコーダ235からエンコーダ値を読み取る(ステップS803)。続くステップS810では、ロボット軌道上をロボットアーム201が動くよう、関節を駆動する。その場合、移動先の目標位置は実施形態2のように次の教示点のみが選ばれるのではなく、教示軌道記憶部710に格納されている教示点850と中間軌道点851のいずれかが順次選ばれる。
即ち、読み取りエラー判定(ステップS802)でエラーとなった場合、入力軸エンコーダ235から回転角を読み込み(ステップS803)、その値を用いて教示軌道記憶部710に格納する教示点または中間軌道点851に移動(ステップS810)する。ステップS803で読み込んだ入力軸エンコーダ235のエンコーダ出力はロボットアーム201の基準部位を教示軌道記憶部710に格納されている教示点850または中間軌道点851へ移動させるためのモータ231の駆動量を決定するのに用いられる。所定の駆動量、モータ231が駆動されると、ステップS811でロボットアーム201の基準部位が当該の教示点850または中間軌道点851の位置で停止する(ステップS812)。その後、制御は図9、図12の場合と同様にステップS801に移行する。これ以外の動作は、図12で説明したものと同等である。
以上のように、本実施形態3によれば、ロボット関節の出力軸エンコーダ236(第2のエンコーダ)のスケール上にごみ、塵埃や傷が存在し、エンコーダ(読み取り)エラーが生じた場合でも、絶対位置(角度)の再検出(再取得)が可能である。その場合、本実施形態3では、例えば物品製造のためのロボット動作を記述した教示点から生成された軌道上の点(具体的には教示点850、中間軌道点851)を目標位置としてロボットアーム201の基準部位を動作させる。このように絶対位置(角度)の再検出(再取得)では、ロボットアーム201を教示軌道に沿って動かすことにより、当該の関節を動作させ、教示点で出力軸エンコーダ236の絶対位置の再取得を行う。従って、ロボットアーム201が工場に設置され、周囲に障害物がある状態においても、アームが干渉する問題を生じずに出力軸エンコーダ236の絶対座標を再取得することができる。結果として、減速機のねじれやガタの影響の無い、精度の高い位置情報を取得し、それに基づきロボットアーム201を動作させることにより、例えば高精度な物品の製造が可能となる。
<実施形態4>
上記実施形態1〜3では、エンコーダ読み取りエラーを生じた場合の絶対位置(角度)の再検出(再取得)では、ロボットアーム201を移動させた後、停止させてから出力軸エンコーダ236の再読み込みを試行する。特に実施形態2、3では、教示点や中間軌道点を目標位置としてロボットアーム201を移動させた後、停止させてから出力軸エンコーダ236の再読み込みを試行している。しかしながら、(例えば物品製造などのための本来の)ロボット軌道でロボットアーム201を移動させている間、出力軸エンコーダ236の絶対位置(角度)の再検出(再取得)の試行を(例えば繰り返し)行うことも考えられる。このような制御を行うことにより、例えば物品製造などのために意図された本来の停止位置とは異なる位置で、出力軸エンコーダ236の絶対位置(角度)の再検出(再取得)のためにロボットを停止させなくて済む。これにより、物品製造などのためのロボット動作を遅滞なく行え、効率よく物品製造などの本来の動作を効率よく行いつつ、エンコーダエラーに対処できる。
ここで、上記実施形態3では、教示点850や中間軌道点851でロボットアーム201を停止させて、出力軸エンコーダ236の絶対位置(角度)の再検出(再取得)を行っている。例えば、図15に示したように、多くの場合、アームを中間軌道点851に移動させる時間間隔は一定、例えば4mS程度の間隔になるよう、中間軌道点851が生成される。また、当然ながら、軌道を生成した時点で教示点850から求めた中間軌道点851の関節角度(回転角)も既知、あるいはそれを(再)計算によって求めることができる。即ち、教示軌道生成部708の軌道生成によると、ロボットアーム201が動いている状態でも、関節位置と時間(時刻)は判明しており、これを利用して出力軸エンコーダ236の絶対位置(角度)の再検出(再取得)が可能である。
本実施形態4の制御系は、図16のように構成されている。図16の表示の形式は、図8、図11、図13などと同等である。以下、実施形態2、3の場合と同様に、図16については、既に説明したこれら図8、図11、図13などと異なる構成につき説明する。
図16の構成では、教示軌道生成部708の出力は軌道制御部705と、出力軸エンコーダ再取得制御部707によって利用される。軌道制御部705では教示軌道に沿ってロボットアーム201を動作させる。また、出力軸エンコーダ再取得制御部707では、出力軸エンコーダ236の絶対位置情報と教示軌道生成部708からの中間軌道点851の時間情報を同時に取得し、教示軌道・出力軸エンコーダ値記憶部711に出力する。
教示軌道・出力軸エンコーダ値記憶部711では、記憶されたデータは出力軸エンコーダ位置演算部712で中間軌道点851から当該関節の回転速度を算出する。即ち、2つの中間軌道点851における減速機233の入力軸の回転角情報と、中間軌道点間の時間(例えば4mS)から、回転速度を算出する。これにより中間軌道点851毎の関節の回転速度を計算できる。出力軸エンコーダ236の原点を取得してから出力軸エンコーダ再取得制御部707が絶対値データの再取得を止めるまでの時間を用いることにより、出力軸エンコーダ236がどれだけ回転したかが判る。従って、出力軸エンコーダ236から取得した原点情報に、この時間を加算してその値を原点情報として出力軸エンコーダ制御部704へ送ることにより、停止して原点を設定した時と同じように出力軸エンコーダ236の原点設定が可能となる
次に、図17を参照して、本実施形態の制御手順につき説明する。図17は、図9、図12、図14などに対応するフローチャートである。図17においても、図9、図12、図14などと同一の処理ステップについては同一のステップ番号を用いている。
図17の制御手順でも、ステップS800、S801、S802の処理は、図9、図12、図14などと同一である。また、ステップS802でエンコーダエラーが生じた場合の入力軸エンコーダ235の読み込み(S803)も同様で、続くステップS810では入力軸エンコーダ235の出力を用いて、ロボットアーム201を教示軌道上で動作させる。ただし、このステップS810では、例えば次の教示点850か、中間軌道点851までの移動を指令して、ステップS801に復帰する。
図S17で図9、図12、図14などと異なるのは、ステップS802でエンコーダエラーが検出されていない場合のステップS806、S807、S808、S809、S816に先立って、ステップS813、S814、S815が挿入されている点である。
即ち、ステップS802で出力軸エンコーダ236の読み取りエラー検出されていない場合は、ステップS813に移行する。ステップS813では、出力軸エンコーダ236のアブソリュートデータと、軌道データ、例えば中間軌道点851を教示軌道・出力軸エンコーダ値記憶部711に記憶させる。
次にステップS814において、教示軌道・出力軸エンコーダ値記憶部711に記憶させた2つのデータに基づき、出力軸エンコーダ位置演算部712が、前回の中間軌道点851との間の時間(例えば4mS)を用いて、中間軌道点851間の回転速度を算出する。
続いて、ステップS815において、ステップS801で取得済みのアブソリュートデータに、ステップS814で出力軸エンコーダ位置演算部712が演算した回転速度により算出した角度差分を加算して原点位置を取得する。この原点位置を用いて、ステップS806では、出力軸エンコーダ236の原点設定を行う。
ステップS807、S808、S809、およびS816では、ステップS806の出力軸エンコーダ236の原点設定に基づき、図9、図12、図14(実施形態1〜3)と同様に、ロボットアーム201を通常動作させる。
以上のように、本実施形態4においても、出力軸エンコーダ236(第2のエンコーダ)のスケール上にごみ、塵埃や傷が存在し、エンコーダ(読み取り)エラーが生じた場合でも、絶対位置(角度)の再検出(再取得)が可能である。その場合、本実施形態4では、エンコーダ(読み取り)エラーが生じた場合でも、次の教示点または中間軌道点を目標に本来のロボット軌道でアームを動作させ続けることができる。そして、ステップS801、S802において、読み取りエラーが検出されなくなった場合に、関節の(角)速度に基づき、原点位置を演算する(S813〜S815)。さらに、この原点位置を用いて、通常のアブソリュート動作で出力軸エンコーダ236(第2のエンコーダ)を動作させ続けることができる。即ち、本実施形態によれば、教示軌道に沿ってロボットアームを動かし続けながら、出力軸エンコーダ236の絶対位置の再取得を行うことができる。そのため、出力軸エンコーダ236にエンコーダエラーが生じた場合でも、絶対位置の再取得を行いながら、本来の物品製造などのためのロボット動作を遅滞なく進行させることができる。そのため、物品の製造動作を極めて効率よく実行することができる。その場合、出力軸エンコーダの絶対座標に基づき、精度の高いロボットアーム制御が可能であり、周囲の障害物との干渉を生じることなく、高品質な物品を効率よく製造することができる。
本発明は、上述の実施例の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステムまたは装置に供給し、そのシステムまたは装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
J1〜J6…関節、W1、W2…ワーク、201…ロボットアーム、204〜209…リンク、230…関節駆動部、231…モータ、232…回転軸、233…減速機、235…入力軸エンコーダ、236…出力軸エンコーダ、300…制御装置、301…CPU(制御部)、302…ROM、303…RAM、304…HDD、400…ティーチングペンダント、601…光源、602…スケール、603…受光素子、604…センサユニット(検出部)、605…スケールトラック、606…インクリメントスケール、607…アブソリュートスケール(スケール読み取り範囲)、608、609…ごみ、610…アブソリュートスケール(位相差あり)、701…モータ駆動部、702…モータ制御部、703…入力軸エンコーダ制御部、704…出力軸エンコーダ制御部、705…軌道制御部、706…エンコーダ読み取りエラー判定部、707…出力軸エンコーダ再取得制御部、708…教示軌道生成部、709…教示点記憶部、710…教示軌道記憶部、711…教示軌道・出力軸エンコーダ値記憶部、712…出力軸エンコーダ位置演算部、850…教示点、851…中間軌道点。

Claims (13)

  1. 関節および前記関節により連結されたリンクを備えたロボットアームと、
    前記関節に配置され、パターンが形成された被読取領域を有するスケールと、前記スケールに対して相対的に移動し、該移動した位置において前記被読取領域のパターンを読み取る検出部と、を有し、前記関節の位置情報を検出する第1および第2のエンコーダと、
    前記第1および第2のエンコーダの検出結果に基づき前記ロボットアームの関節の動作を制御する制御部と、を備え、
    前記制御部は、前記第2のエンコーダの検出部の読み取りエラーが発生した場合、前記第1のエンコーダの検出結果に基づいて前記ロボットアームの前記関節を駆動して前記第2のエンコーダの位置情報を再検出するエンコーダ再検出処理を実行するロボット装置。
  2. 請求項1に記載のロボット装置において、前記制御部は、前記エンコーダ再検出処理において、前記第1のエンコーダの検出結果に基づいて前記ロボットアームの前記関節を駆動して、前記第2のエンコーダの検出部の読み取りエラーが発生せずに前記第2のエンコーダの位置情報を検出できるまで前記第2のエンコーダの位置情報の読み取りを試行する、再検出処理を行うロボット装置。
  3. 請求項1または2に記載のロボット装置において、前記第1のエンコーダが前記関節を駆動する変速機の入力側に配置された入力軸エンコーダであり、前記第2のエンコーダが前記変速機の出力側に配置された出力軸エンコーダであるロボット装置。
  4. 請求項1から3のいずれか1項に記載のロボット装置において、前記第1または第2のエンコーダが、アブソリュートエンコーダの機能と、インクリメントエンコーダの機能と、を備えるロボット装置。
  5. 請求項1から4のいずれか1項に記載のロボット装置において、前記第2のエンコーダが、アブソリュートエンコーダの機能と、インクリメントエンコーダの機能と、を備え、
    前記制御部は、前記第2のエンコーダのアブソリュートエンコーダの検出結果に読み取りエラーが有る場合に、前記エンコーダ再検出処理において、前記第1のエンコーダの検出結果と、前記第2のエンコーダのインクリメントエンコーダの検出結果を用いて前記関節を駆動し、前記第2のエンコーダの位置情報を再検出するロボット装置。
  6. 請求項1から5のいずれか1項に記載のロボット装置において、前記制御部は、前記エンコーダ再検出処理において、前記第1のエンコーダの検出結果と、前記ロボットアームの位置姿勢を制御するための教示点情報と、を用いて前記関節を駆動し、前記教示点情報が含む特定の教示点に相当する前記関節の位置において、前記第2のエンコーダの位置情報を再検出するロボット装置。
  7. 請求項1から5のいずれか1項に記載のロボット装置において、前記制御部は、前記エンコーダ再検出処理において、前記第1のエンコーダの検出結果と、前記ロボットアームの位置姿勢を制御するための教示点情報と、を用いて前記関節を駆動し、前記教示点情報に含まれる教示点を結ぶロボット軌道上の前記ロボットアームの特定の位置姿勢に相当する前記関節の位置において、前記第2のエンコーダの位置情報を再検出するロボット装置。
  8. 請求項1から5のいずれか1項に記載のロボット装置において、前記制御部は、前記エンコーダ再検出処理において、前記第1のエンコーダの検出結果と、前記ロボットアームの位置姿勢を制御するための教示点情報と、を用いて前記関節を駆動し、前記ロボットアームが前記教示点情報に含まれる教示点を結ぶロボット軌道に沿って移動している間に前記第2のエンコーダの位置情報を再検出するロボット装置。
  9. 関節および前記関節により連結されたリンクを備えたロボットアームと、
    前記関節に配置され、パターンが形成された被読取領域を有するスケールと、前記スケールに対して相対的に移動し、該移動した位置において前記被読取領域のパターンを読み取る検出部と、を有し、前記関節の位置情報を検出する第1および第2のエンコーダと、
    前記第1および第2のエンコーダの検出結果に基づき前記ロボットアームの関節の動作を制御する制御部と、を備えたロボット装置の制御方法において、
    前記制御部が、前記第2のエンコーダの検出部で読み取りエラーが発生したか否かを判定するエラー判定処理と、
    前記エラー判定処理により前記読み取りエラーが発生した場合、前記第1のエンコーダの検出結果に基づいて前記ロボットアームの前記関節を駆動し、前記第2のエンコーダの位置情報を再検出するエンコーダ再検出処理と、を実行するロボット装置の制御方法。
  10. 請求項9に記載の制御部に、前記各処理を実行させるための制御プログラム。
  11. 請求項10に記載の制御プログラムを格納したコンピュータ読み取り可能な記録媒体。
  12. 請求項1から8のいずれか1項に記載のロボット装置が配置され、前記ロボット装置によって物品を製造する生産システム。
  13. 請求項1から8のいずれか1項に記載のロボット装置が配置された生産システムによって物品を製造する製造方法。
JP2017232096A 2017-12-01 2017-12-01 ロボット装置、およびロボット装置の制御方法 Active JP7118628B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017232096A JP7118628B2 (ja) 2017-12-01 2017-12-01 ロボット装置、およびロボット装置の制御方法
US16/181,823 US11413759B2 (en) 2017-12-01 2018-11-06 Robot apparatus, control method for controlling the same, non-transitory computer-readable recording medium, manufacturing system, and method for manufacturing an article

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017232096A JP7118628B2 (ja) 2017-12-01 2017-12-01 ロボット装置、およびロボット装置の制御方法

Publications (3)

Publication Number Publication Date
JP2019098469A true JP2019098469A (ja) 2019-06-24
JP2019098469A5 JP2019098469A5 (ja) 2021-01-14
JP7118628B2 JP7118628B2 (ja) 2022-08-16

Family

ID=66658757

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017232096A Active JP7118628B2 (ja) 2017-12-01 2017-12-01 ロボット装置、およびロボット装置の制御方法

Country Status (2)

Country Link
US (1) US11413759B2 (ja)
JP (1) JP7118628B2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7149792B2 (ja) * 2018-09-25 2022-10-07 東京エレクトロン株式会社 搬送装置、半導体製造装置及び搬送方法
JP7234577B2 (ja) * 2018-10-31 2023-03-08 セイコーエプソン株式会社 ロボットシステム、ロボット制御方法、及びエンコーダー
JP7272075B2 (ja) * 2019-04-08 2023-05-12 セイコーエプソン株式会社 エンコーダー、モーター及びロボット
CN114466733A (zh) * 2019-11-21 2022-05-10 松下知识产权经营株式会社 机器人控制方法以及机器人控制装置
CN114274131B (zh) * 2020-09-26 2024-05-28 苏州艾利特机器人有限公司 一种冗余自由度机器人上电关节精度管理方法
CN114274132B (zh) * 2020-09-26 2024-05-28 苏州艾利特机器人有限公司 一种多关节机器人上电关节精度管理方法
JP2022086241A (ja) * 2020-11-30 2022-06-09 セイコーエプソン株式会社 モーター制御用角度センサー、モーター制御システムおよびモーター制御用角度センサーの制御方法
CN112873264B (zh) * 2021-03-18 2024-02-23 中国工程物理研究院机械制造工艺研究所 一种工业机器人关节结构、机器人控制系统及方法
CN114227638B (zh) * 2021-11-29 2023-11-28 广州市微眸医疗器械有限公司 一种机器人操作杆和机器人的主从映射方法及校正方法
CN114176788B (zh) * 2022-02-17 2022-04-19 极限人工智能有限公司 微创手术机器人及连接控制方法
CN117580683A (zh) * 2022-05-16 2024-02-20 北京小米机器人技术有限公司 一种机器人的关节角度的确定方法、装置、设备及介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63167912A (ja) * 1986-12-29 1988-07-12 Nec Corp サ−ボ制御装置
JPH04235610A (ja) * 1991-01-09 1992-08-24 Hitachi Ltd 産業用ロボットの異常検出装置
US5332895A (en) * 1992-02-20 1994-07-26 Rsf-Elektronik Gesellschaft M.B.H. Angle encoder with incremental and absolute tracks
JP2002039727A (ja) * 2000-07-21 2002-02-06 Asahi Precision Co Ltd アブソリュートエンコーダを備えた測角装置
JP2010008591A (ja) * 2008-06-25 2010-01-14 Canon Inc 画像形成装置
JP2011123716A (ja) * 2009-12-11 2011-06-23 Nikon Corp 駆動装置、駆動方法、及び装置
JP2012250304A (ja) * 2011-06-01 2012-12-20 Seiko Epson Corp ロボット制御方法、ロボット
JP2015090300A (ja) * 2013-11-05 2015-05-11 株式会社安川電機 エンコーダ、エンコーダ付きモータ、サーボシステム
JP2017140685A (ja) * 2016-02-12 2017-08-17 キヤノン株式会社 ロボット装置、ロボット制御方法、部品の製造方法、プログラム、記録媒体

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4163183A (en) * 1975-10-28 1979-07-31 Unimation, Inc. Programmable automatic assembly system
US4327437A (en) * 1980-07-30 1982-04-27 Nasa Reconfiguring redundancy management
US6871115B2 (en) * 2002-10-11 2005-03-22 Taiwan Semiconductor Manufacturing Co., Ltd Method and apparatus for monitoring the operation of a wafer handling robot
US9104650B2 (en) * 2005-07-11 2015-08-11 Brooks Automation, Inc. Intelligent condition monitoring and fault diagnostic system for preventative maintenance
JP4705128B2 (ja) * 2008-04-15 2011-06-22 オリンパスメディカルシステムズ株式会社 マニピュレータ
US9505133B2 (en) 2013-12-13 2016-11-29 Canon Kabushiki Kaisha Robot apparatus, robot controlling method, program and recording medium
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
JP5980965B2 (ja) 2015-01-08 2016-08-31 ファナック株式会社 複数の回転角検出器により回転角を更新するロボット制御装置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63167912A (ja) * 1986-12-29 1988-07-12 Nec Corp サ−ボ制御装置
JPH04235610A (ja) * 1991-01-09 1992-08-24 Hitachi Ltd 産業用ロボットの異常検出装置
US5332895A (en) * 1992-02-20 1994-07-26 Rsf-Elektronik Gesellschaft M.B.H. Angle encoder with incremental and absolute tracks
JP2002039727A (ja) * 2000-07-21 2002-02-06 Asahi Precision Co Ltd アブソリュートエンコーダを備えた測角装置
JP2010008591A (ja) * 2008-06-25 2010-01-14 Canon Inc 画像形成装置
JP2011123716A (ja) * 2009-12-11 2011-06-23 Nikon Corp 駆動装置、駆動方法、及び装置
JP2012250304A (ja) * 2011-06-01 2012-12-20 Seiko Epson Corp ロボット制御方法、ロボット
JP2015090300A (ja) * 2013-11-05 2015-05-11 株式会社安川電機 エンコーダ、エンコーダ付きモータ、サーボシステム
JP2017140685A (ja) * 2016-02-12 2017-08-17 キヤノン株式会社 ロボット装置、ロボット制御方法、部品の製造方法、プログラム、記録媒体

Also Published As

Publication number Publication date
JP7118628B2 (ja) 2022-08-16
US11413759B2 (en) 2022-08-16
US20190168389A1 (en) 2019-06-06

Similar Documents

Publication Publication Date Title
JP2019098469A (ja) ロボット装置、およびロボット装置の制御方法
JP6504864B2 (ja) ロボット制御方法、ロボット装置、プログラム、記録媒体及び物品の製造方法
US10335959B2 (en) Joint driving apparatus and robot apparatus
JP6708428B2 (ja) ロボット装置、制御方法、製造方法、プログラム、及び記録媒体
US20170326731A1 (en) Robot controlling method, robot apparatus, program, recording medium, and method for manufacturing assembly component
CN108858183B (zh) 机器人、机器人的控制方法、工件的制造方法
JP6164948B2 (ja) ロボット装置及び部品の製造方法
JP5972346B2 (ja) ロボット装置、ロボット制御方法、プログラム及び記録媒体
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
JP6584102B2 (ja) ロボット装置、ロボット制御方法、プログラム、記録媒体、及び物品の製造方法
JP2010228028A (ja) ロボットアーム、ロボットアームの接触検知方法、及び、ロボットアームを備えた装置
JP2016078149A (ja) ロボット装置の制御方法及びロボット装置、プログラム及び記録媒体
JP2017064802A (ja) ロボットアーム、ロボット装置、およびロボットアームの制御方法
JP6772013B2 (ja) ロボットアーム、ロボット制御装置、およびロボットシステム
JPWO2017081792A1 (ja) 検出装置の異常判定システム、検出装置、検出装置の異常判定装置、および検出装置の異常判定方法
JP2021065944A (ja) ロボット
JP2020104177A (ja) ロボット装置、ロボット装置の制御方法、プログラム、記録媒体、物品の製造方法
JP7185495B2 (ja) 減速機システム、駆動ユニットへの指令値の補正方法、補正データの生成方法、及び減速機システムの製造方法
JP6652310B2 (ja) ロボットシステム、ロボットアームの制御方法、プログラム、記録媒体、及び物品の製造方法
JP2020062730A (ja) ロボット制御方法、ロボット装置、プログラム、記録媒体および物品の製造方法
JP2019030923A (ja) ロボットアーム、ロボット装置、ロボットシステム
JP7414426B2 (ja) ロボットシステム
JP2020097085A (ja) ロボット装置の検査方法、プログラム、記録媒体、ロボットシステム、物品の製造方法
JP2006321046A (ja) 多関節型ロボットの制御方法
JP7199903B2 (ja) 制御方法、物品の製造方法、ロボットシステム、プログラム、及び記録媒体

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20200206

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20200207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201126

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201126

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210831

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210907

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211104

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220405

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220602

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: 20220705

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220803

R151 Written notification of patent or utility model registration

Ref document number: 7118628

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151