JP2017007023A - ロボット装置及びモータ制御装置 - Google Patents
ロボット装置及びモータ制御装置 Download PDFInfo
- Publication number
- JP2017007023A JP2017007023A JP2015124219A JP2015124219A JP2017007023A JP 2017007023 A JP2017007023 A JP 2017007023A JP 2015124219 A JP2015124219 A JP 2015124219A JP 2015124219 A JP2015124219 A JP 2015124219A JP 2017007023 A JP2017007023 A JP 2017007023A
- Authority
- JP
- Japan
- Prior art keywords
- encoder
- joint
- rotation
- motor
- determination unit
- 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
- 230000007246 mechanism Effects 0.000 claims abstract description 52
- 230000005540 biological transmission Effects 0.000 claims abstract description 14
- 230000005856 abnormality Effects 0.000 claims abstract description 12
- 230000009467 reduction Effects 0.000 claims description 9
- 230000033001 locomotion Effects 0.000 abstract description 32
- 230000008602 contraction Effects 0.000 description 29
- 238000000034 method Methods 0.000 description 18
- 238000004364 calculation method Methods 0.000 description 16
- 230000008569 process Effects 0.000 description 14
- 238000006073 displacement reaction Methods 0.000 description 13
- 238000005452 bending Methods 0.000 description 11
- 210000001503 joint Anatomy 0.000 description 11
- 210000000707 wrist Anatomy 0.000 description 11
- 238000002347 injection Methods 0.000 description 9
- 239000007924 injection Substances 0.000 description 9
- 230000001186 cumulative effect Effects 0.000 description 8
- 239000013598 vector Substances 0.000 description 8
- 239000011159 matrix material Substances 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 230000002159 abnormal effect Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 4
- 230000009466 transformation Effects 0.000 description 3
- 239000012636 effector Substances 0.000 description 2
- 230000005284 excitation Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003638 chemical reducing agent Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000009940 knitting Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000474 nursing effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 229920002635 polyurethane Polymers 0.000 description 1
- 239000004814 polyurethane Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 229920003051 synthetic elastomer Polymers 0.000 description 1
- 239000005061 synthetic rubber Substances 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
- B25J19/06—Safety devices
- B25J19/063—Safety devices working only upon contact with an outside object
-
- 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/08—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
- B25J13/088—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
-
- 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/08—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
- B25J13/081—Touching devices, e.g. pressure-sensitive
- B25J13/084—Tactile sensors
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
- B25J19/06—Safety devices
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
- B25J19/06—Safety devices
- B25J19/061—Safety devices with audible signals
-
- 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/1674—Programme controls characterised by safety, monitoring, diagnostic
- B25J9/1676—Avoiding collision or forbidden zones
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40201—Detect contact, collision with human
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40202—Human robot coexistence
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Manipulator (AREA)
Abstract
【課題】 ロボットアームの接触等の外乱因子による動作異常を網羅的に検知すること。
【解決手段】 本実施形態に係るロボット装置は、多関節アーム機構を備え、複数のリンクと、複数のリンク間を接続する複数の関節部J1−J6と、複数の関節部を駆動するための動力を発生する複数のモータ310−360と、複数の関節部の少なくとも一の関節部のモータのドライブシャフトの回転を少なくとも一の関節部の回転軸に伝達する伝達機構と、少なくとも一の関節部のモータのドライブシャフトの回転を検出する第1エンコーダ235と、少なくとも一の関節部の回転軸の回転を検出する第2エンコーダ236と、第1エンコーダから出力されるエンコーダパルスと第2エンコーダから出力されるエンコーダパルスとに基づいて動作異常の判定をする判定部105とを具備する。
【選択図】 図5
【解決手段】 本実施形態に係るロボット装置は、多関節アーム機構を備え、複数のリンクと、複数のリンク間を接続する複数の関節部J1−J6と、複数の関節部を駆動するための動力を発生する複数のモータ310−360と、複数の関節部の少なくとも一の関節部のモータのドライブシャフトの回転を少なくとも一の関節部の回転軸に伝達する伝達機構と、少なくとも一の関節部のモータのドライブシャフトの回転を検出する第1エンコーダ235と、少なくとも一の関節部の回転軸の回転を検出する第2エンコーダ236と、第1エンコーダから出力されるエンコーダパルスと第2エンコーダから出力されるエンコーダパルスとに基づいて動作異常の判定をする判定部105とを具備する。
【選択図】 図5
Description
本発明の実施形態はロボット装置及びモータ制御装置に関する。
近年ロボットが作業者と同一空間にいる環境が多くなってきている。介護用ロボットはもちろん産業用ロボットでも作業者と並んで協働して作業を行なう状況が今後拡大していくものと考えられる。その状況で重要なのは安全性であり、作業者等に対するロボットアームの接触、特に衝突に代表される外乱因子に帰する動作異常時の迅速な停止又は退避動作にある。
そのために多くのロボット装置ではアームの先端や側面等の多くの箇所に接触センサを配設することが必要とされる。
しかし接触センサの取り付け位置には制限があり接触の可能性のある箇所全てに取り付けることは現実的でなく、接触に対して網羅的に対処することはできなかった。
目的は、ロボットアームの接触等の外乱因子による動作異常を網羅的に検知することにある。
本実施形態に係るロボット装置は、多関節アーム機構を備え、複数のリンクと、前記複数のリンク間を接続する複数の関節部と、前記複数の関節部を駆動するための動力を発生する複数のモータと、前記複数の関節部の少なくとも一の関節部のモータのドライブシャフトの回転を前記少なくとも一の関節部の回転軸に伝達する伝達機構と、前記少なくとも一の関節部のモータのドライブシャフトの回転を検出する第1エンコーダと、前記少なくとも一の関節部の回転軸の回転を検出する第2エンコーダと、前記第1エンコーダから出力されるエンコーダパルスと前記第2エンコーダから出力されるエンコーダパルスとに基づいて動作異常の判定をする判定部とを具備することを特徴とする。
以下、図面を参照しながら本実施形態に係るロボット装置を説明する。ロボット装置は、ステッピングモータをアクチュエータとする関節部を有するロボットアーム機構を備える。当該ロボット装置としては、垂直多関節アーム機構、特に複数の関節部のうち一が直動伸縮関節を備えた垂直多関節アーム機構を例に説明する。以下の説明において、略同一の機能及び構成を有する構成要素については、同一符号を付し、重複説明は必要な場合にのみ行う。
図1は、本実施形態に係るロボット装置の外観斜視図である。ロボット装置を構成するロボットアーム機構は、略円筒形状の基部1と基部1に接続されるアーム部2とアーム部2の先端に取り付けられる手首部4とを有する。手首部4には図示しないアダプタが設けられている。例えば、アダプタは後述の第6回転軸RA6の回転部に設けられる。手首部4に設けられたアダプタには、用途に応じたロボットハンドが取り付けられる。
ロボットアーム機構は、複数、ここでは6つの関節部J1,J2,J3,J4,J5,J6を有する。複数の関節部J1,J2,J3,J4,J5,J6は基部1から順番に配設される。一般的に、第1、第2、第3関節部J1,J2,J3は根元3軸と呼ばれ、第4、第5、第6関節部J4,J5,J6はロボットハンドの姿勢を変化させる手首3軸と呼ばれる。手首部4は第4、第5、第6関節部J4,J5,J6を有する。根元3軸を構成する関節部J1,J2,J3の少なくとも一つは直動伸縮関節である。ここでは第3関節部J3が直動伸縮関節部、特に伸縮距離の比較的長い関節部として構成される。アーム部2は直動伸縮関節部J3(第3関節部J3)の伸縮部分を表している。
第1関節部J1は基台面に対して例えば垂直に支持される第1回転軸RA1を中心としたねじり関節である。第2関節部J2は第1回転軸RA1に対して垂直に配置される第2回転軸RA2を中心とした曲げ関節である。第3関節部J3は、第2回転軸RA2に対して垂直に配置される第3軸(移動軸)RA3を中心として直線的にアーム部2が伸縮する関節である。
第4関節部J4は、第4回転軸RA4を中心としたねじり関節である。第4回転軸RA4は、後述の第7関節部J7が回転していないとき、つまりアーム部2の全体が直線形状にあるとき、第3移動軸RA3と略一致する。第5関節部J5は第4回転軸RA4に対して直交する第5回転軸RA5を中心とした曲げ関節である。第6関節部J6は第4回転軸RA4に対して直交し、第5回転軸RA5に対して垂直に配置される第6回転軸RA6を中心とした曲げ関節である。
基部1を成すアーム支持体(第1支持体)11aは、第1関節部J1の第1回転軸RA1を中心に形成される円筒形状の中空構造を有する。第1関節部J1は図示しない固定台に取り付けられる。第1関節部J1が回転するとき、アーム部2は第1支持体11aの軸回転とともに左右に旋回する。なお、第1支持体11aが接地面に固定されていてもよい。その場合、第1支持体11aとは独立してアーム部2が旋回する構造に設けられる。第1支持体11aの上部には第2支持部11bが接続される。
第2支持部11bは第1支持部11aに連続する中空構造を有する。第2支持部11bの一端は第1関節部J1の回転部に取り付けられる。第2支持部11bの他端は開放され、第3支持部11cが第2関節部J2の第2回転軸RA2において回動自在に嵌め込まれる。第3支持部11cは第1支持部11a及び第2支持部に連通する鱗状の外装からなる中空構造を有する。第3支持部11cは、第2関節部J2の曲げ回転に伴ってその後部が第2支持部11bに収容され、また送出される。ロボットアーム機構の直動伸縮関節部J3(第3関節部J3)を構成するアーム部2の後部はその収縮により第1支持部11aと第2支持部11bの連続する中空構造の内部に収納される。
第3支持部11cはその後端下部において第2支持部11bの開放端下部に対して第2回転軸RA2を中心として回動自在に嵌め込まれる。それにより第2回転軸RA2を中心とした曲げ関節部としての第2関節部J2が構成される。第2関節部J2が回動するとき、アーム部2は第2回転軸RA2を中心に垂直方向に回動、つまり起伏動作をする。
第4関節部J4は、アーム部2の伸縮方向に沿ったアーム中心軸、つまり第3関節部J3の第3移動軸RA3に典型的には接する第4回転軸RA4を有するねじり関節である。第4関節部J4が回転すると、手首部4及び手首部4に取り付けられたロボットハンドは第4回転軸RA4を中心に回転する。第5関節部J5は、第4関節部J4の第4回転軸RA4に対して直交する第5回転軸RA5を有する曲げ関節部である。第5関節部J5が回転すると、第5関節部J5から先端にかけてロボットハンドとともに上下(第5回転軸RA5を中心に垂直方向)に回動する。第6関節部J6は、第4関節部J4の第4回転軸RA4に直交し、第5関節部J5の第5回転軸RA5に垂直な第6回転軸RA6を有する曲げ関節である。第6関節部J6が回転すると、ロボットハンドは左右に旋回する。
上記の通り手首部4のアダプタに取り付けられたロボットハンドは、第1、第2、第3関節部J1.J2.J3により任意位置に移動され、第4、第5、第6関節部J4、J5、J6により任意姿勢に配置される。特に第3関節部J3のアーム部2の伸縮距離の長さは、基部1の近接位置から遠隔位置までの広範囲の対象にロボットハンドを到達させることを可能にする。第3関節部J3はそれを構成する直動伸縮機構により実現される直線的な伸縮動作とその伸縮距離の長さとが特徴的である。
図2は、図1のロボットアーム機構の内部構造を示す斜視図である。直動伸縮機構はアーム部2と射出部30とを有する。アーム部2は第1連結コマ列21と第2連結コマ列22とを有する。第1連結コマ列21は複数の第1連結コマ23からなる。第1連結コマ23は略平板形に構成される。前後の第1連結コマ23は、互いの端部箇所においてピンにより屈曲自在に列状に連結される。第1連結コマ列21は内側や外側に自在に屈曲できる。
第2連結コマ列22は複数の第2連結コマ24からなる。第2連結コマ24は横断面コ字形状の短溝状体に構成される。前後の第2連結コマ24は、互いの底面端部箇所においてピンにより屈曲自在に列状に連結される。第2連結コマ列22は内側に屈曲できる。第2連結コマ24の断面はコ字形状であるので、第2連結コマ列22は、隣り合う第2連結コマ24の側板同士が衝突して、外側には屈曲しない。なお、第1、第2連結コマ23、24の第2回転軸RA2に向いた面を内面、その反対側の面を外面というものとする。第1連結コマ列21のうち先頭の第1連結コマ23と、第2連結コマ列22のうち先頭の第2連結コマ24とは結合コマ27により接続される。例えば、結合コマ27は第2連結コマ24と第1連結コマ23とを合成した形状を有している。
射出部30は、複数の上部ローラ31と複数の下部ローラ32とが角筒形状のフレーム35に支持されてなる。例えば、複数の上部ローラ31は第1連結コマ23の長さと略等価な間隔を隔ててアーム中心軸に沿って配列される。同様に、複数の下部ローラ32は第2連結コマ24の長さと略等価な間隔を隔ててアーム中心軸に沿って配列される。射出部30の後方には、ガイドローラ40とドライブギア50とが第1連結コマ列21を挟んで対向するように設けられる。ドライブギア50は図示しない減速器を介してステッピングモータ330に接続される。第1連結コマ23の内面には連結方向に沿ってリニアギアが形成されている。複数の第1連結コマ23が直線状に整列されたときに互いのリニアギアは直線状につながって、長いリニアギアを構成する。ドライブギア50は、直線状のリニアギアにかみ合わされる。直線状につながったリニアギアはドライブギア50とともにラックアンドピニオン機構を構成する。
アーム伸長時、モータ55が駆動し、ドライブギア50が順回転すると、第1連結コマ列21はガイドローラ40により、アーム中心軸と平行な姿勢となって、上部ローラ31と下部ローラ32との間に誘導される。第1連結コマ列21の移動に伴い、第2連結コマ列22は射出部30の後方に配置された図示しないガイドレールにより射出部30の上部ローラ31と下部ローラ32との間に誘導される。上部ローラ31と下部ローラ32との間に誘導された第1、第2連結コマ列21,22は互いに押圧される。これにより、第1、第2連結コマ列21,22による柱状体が構成される。射出部30は、第1、第2連結コマ列21,22を接合して柱状体を構成するとともに、その柱状体を上下左右に支持する。第1、第2連結コマ列21、22の接合による柱状体が射出部30により堅持されることで、第1、第2連結コマ列21,22の接合状態が保持される。第1、第2連結コマ列21、22の接合状態が維持されているとき、第1、第2連結コマ列21,22の屈曲は互いに拘束される。それにより第1、第2連結コマ列21、22は、一定の剛性を備えた柱状体を構成する。柱状体とは、第2連結コマ列22に第1連結コマ列21が接合されてなる柱状の棒体を言う。この柱状体は第2連結コマ24が第1連結コマ23とともに全体として様々な断面形状の筒状体に構成される。筒状体とは上下左右が天板、底板及び両側板で囲まれ、前端部と後端部とが開放された形状として定義される。第1、第2連結コマ列21、22の接合による柱状体は、結合コマ27が始端となって、第3移動軸RA3に沿って直線的に第3支持部11cの開口から外に向かって送り出される。
アーム収縮時、モータ55が駆動し、ドライブギア50が逆回転されると、ドライブギア50と係合している第1連結コマ列21が第1支持体11a内に引き戻される。第1連結コマ列の移動に伴って、柱状体が第3支持体11c内に引き戻される。引き戻された柱状体は射出部30後方で分離される。例えば、柱状体を構成する第1連結コマ列21はガイドローラ40とドライブギア50とに挟まれ、柱状体を構成する第2連結コマ列22は重力により下方に引かれ、それにより第2連結コマ列22と第1連結コマ列21とは互いに離反される。離反された第1、第2連結コマ列21,22はそれぞれ屈曲可能な状態に復帰する。収納に際しては、射出部30から、第1支持体11a(基部1)の内部の収納部に第2連結コマ列22は内側に屈曲されて搬送され、第1連結コマ列21も第2連結コマ列22と同じ方向(内側)に屈曲されて搬送される。第1連結コマ列21は第2連結コマ列22に略平行な状態で格納される。
図3は、図1のロボットアーム機構を図記号表現により示す図である。ロボットアーム機構において、根元3軸を構成する第1関節部J1と第2関節部J2と第3関節部J3とにより3つの位置自由度が実現される。また、手首3軸を構成する第4関節部J4と第5関節部J5と第6関節部J6とにより3つの姿勢自由度が実現される。
ロボット座標系Σbは第1関節部J1の第1回転軸RA1上の任意位置を原点とした座標系である。ロボット座標系Σbにおいて、直交3軸(Xb、Yb,Zb)が規定されている。Zb軸は第1回転軸RA1に平行な軸である。Xb軸とYb軸とは互いに直交し、且つZb軸に直交する軸である。手先座標系Σhは、手首部4に取り付けられたロボットハンド5の任意位置(手先基準点)を原点とした座標系である。例えば、ロボットハンド5が2指ハンドのとき、手先基準点(以下、単に手先という。)の位置は2指先間中央位置に規定される。手先座標系Σhにおいて、直交3軸(Xh、Yh,Zh)が規定されている。Zh軸は第6回転軸RA6に平行な軸である。Xh軸とYh軸とは互いに直交し、且つZh軸に直交する軸である。例えば、Xh軸は、ロボットハンド5の前後方向に平行な軸である。手先姿勢とは、手先座標系Σhのロボット座標系Σbに対する直交3軸各々周りの回転角(Xh軸周りの回転角(ヨウ角)α、Yh軸周りの回転角(ピッチ角)β、Zh軸周りの回転角(ロール角)γとして与えられる。
第1関節部J1は、第1支持部11aと第2支持部11bとの間に配設されており、回転軸RA1を中心としたねじり関節として構成されている。回転軸RA1は第1関節部J1の固定部が設置される基台の基準面BPに垂直に配置される。
第2関節部J2は回転軸RA2を中心とした曲げ関節として構成される。第2関節部J2の回転軸RA2は空間座標系上のXb軸に平行に設けられる。第2関節部J2の回転軸RA2は第1関節部J1の回転軸RA1に対して垂直な向きに設けられる。さらに第2関節部J2は、第1関節部J1に対して、第1回転軸RA1の方向(Zb軸方向)と第1回転軸RA1に垂直なYb軸方向との2方向に関してオフセットされる。第2関節部J2が第1関節部J1に対して上記2方向にオフセットされるように、第2支持体11bは第1支持体11aに取り付けられる。第1関節部J1に第2関節部J2を接続する仮想的なアームロッド部分(リンク部分)は、先端が直角に曲がった2つの鈎形状体が組み合わされたクランク形状を有している。この仮想的なアームロッド部分は、中空構造を有する第1、第2支持体11a、11bにより構成される。
第3関節部J3は移動軸RA3を中心とした直動伸縮関節として構成される。第3関節部J3の移動軸RA3は第2関節部J2の回転軸RA2に対して垂直な向きに設けられる。第2関節部J2の回転角がゼロ度、つまりアーム部2の起伏角がゼロ度であってアーム部2が水平な基準姿勢においては、第3関節部J3の移動軸RA3は、第2関節部J2の回転軸RA2とともに第1関節部J1の回転軸RA1にも垂直な方向に設けられる。空間座標系上では、第3関節部J3の移動軸RA3はXb軸及びZb軸に対して垂直なYb軸に平行に設けられる。さらに、第3関節部J3は、第2関節部J2に対して、その回転軸RA2の方向(Yb軸方向)と、移動軸RA3に直交するZb軸の方向との2方向に関してオフセットされる。第3関節部J3が第2関節部J2に対して上記2方向にオフセットされるように、第3支持体11cは第2支持体11bに取り付けられる。第2関節部J2に第3関節部J3を接続する仮想的なアームロッド部分(リンク部分)は、先端が垂直に曲がった鈎形状体を有している。この仮想的なアームロッド部分は、第2、第3支持体11b、11cにより構成される。
第4関節部J4は回転軸RA4を中心としたねじり関節として構成される。第4関節部J4の回転軸RA4は第3関節部J3の移動軸RA3に略一致するよう配置される。
第5関節部J5は回転軸RA5を中心とした曲げ関節として構成される。第5関節部J5の回転軸RA5は第3関節部J3の移動軸RA3及び第4関節部J4の回転軸RA4に略直交するよう配置される。
第6関節部J6は回転軸RA6を中心としたねじり関節として構成される。第6関節部J6の回転軸RA6は第4関節部J4の回転軸RA4及び第5関節部J5の回転軸RA5に略直交するよう配置される。第6関節部J6は手先効果器としてのロボットハンド5を左右に旋回するために設けられている。なお、第6関節部J6は、その回転軸RA6が第4関節部J4の回転軸RA4及び第5関節部J5の回転軸RA5に略直交する曲げ関節として構成されてもよい。
第5関節部J5は回転軸RA5を中心とした曲げ関節として構成される。第5関節部J5の回転軸RA5は第3関節部J3の移動軸RA3及び第4関節部J4の回転軸RA4に略直交するよう配置される。
第6関節部J6は回転軸RA6を中心としたねじり関節として構成される。第6関節部J6の回転軸RA6は第4関節部J4の回転軸RA4及び第5関節部J5の回転軸RA5に略直交するよう配置される。第6関節部J6は手先効果器としてのロボットハンド5を左右に旋回するために設けられている。なお、第6関節部J6は、その回転軸RA6が第4関節部J4の回転軸RA4及び第5関節部J5の回転軸RA5に略直交する曲げ関節として構成されてもよい。
このように複数の関節部J1−J6の根元3軸のうちの一つの曲げ関節部を直動伸縮関節部に換装し、第1関節部J1に対して第2関節部J2を2方向にオフセットさせ、第2関節部J2に対して第3関節部J3を2方向にオフセットさせることにより、本実施形態に係るロボット装置のロボットアーム機構は、特異点姿勢を構造上解消している。
(駆動機構の説明) 図4
次に関節部J1−J6各々の駆動機構について説明する。ここでは第3関節部J3の駆動機構を例に説明するが、他の関節部J1−J2,J4−J6各々の駆動機構も同様である。
次に関節部J1−J6各々の駆動機構について説明する。ここでは第3関節部J3の駆動機構を例に説明するが、他の関節部J1−J2,J4−J6各々の駆動機構も同様である。
図4は、図1の第3関節部J3の駆動機構の構造を示す斜視図である。図4に示すように、第3関節部J3の駆動機構は、ステッピングモータ330を有する。ステッピングモータ330のドライブシャフト(駆動軸、入力軸)の一端には、ドライブシャフトエンコーダ235が係合される。ドライブシャフトエンコーダ235はドライブシャフトが所定の微小角回転するごとにパルス(エンコーダパルス)を出力する。ドライブシャフトの他端には駆動プーリーが直結される。この駆動プーリーと従動プーリーとの間にはベルトが掛け渡される。ベルトとしては平ベルト、Vベルト、歯付ベルト等任意の構造が採用され、その材料も合成ゴム、ポリウレタン任意のものが採用される。従動プーリーの径は駆動プーリーの径に対して所定の減速比αを実現するよう設計される。駆動プーリーと従動プーリーとベルトとは、ステッピングモータ330の回転をドライブギア331に伝達するための伝達機構を構成する。なお、伝達機構は、他の構成、例えばギア比の異なる複数のギアから構成されてもよい。従動プーリーのシャフト(出力軸)にはドライブギア331が直結される。従動プーリーのシャフト(出力軸、従動軸)には出力軸エンコーダ236が係合される。出力軸エンコーダ236は従動プーリーのシャフトが、例えば上記ステップ角を回転するごとにエンコーダパルスを出力する。
ドライブギア331は、直動伸縮関節部J3のアーム部2に形成されたリニアギアとともにラックアンドピニオン機構を構成する。ドライブギア331の回転角度に応じた距離(伸縮距離)を第3関節部J3のアーム部2は送り出される。ドライブギア331の回転軸(ドライブギアシャフト、従動軸、出力軸)には、伝達機構を介してステッピングモータ330の回転軸(ドライブシャフト、駆動軸)に接続される。伝達機構は、典型的にはステッピングモータ330の回転速度を減速し、ステッピングモータ330のトルクを増大させるために減速比αの減速機構を構成する。例えば、ドライブギア331に減速比2の減速機構が用いられたとき、ドライブギア331は、ステッピングモータ330の回転角速度の1/2倍の回転角速度で回転し、ステッピングモータ330のトルクの2倍のトルクを発生する。
ドライブシャフトエンコーダ(第1エンコーダ)235と出力軸エンコーダ(第2エンコーダ)236とはそれぞれカウンタ237,238とともにインクリメンタル型ロータリーエンコーダを構成する。光学式ロータリーエンコーダや磁気式ロータリーエンコーダ等のいずれの方式でもよい。ドライブシャフトエンコーダ235は、ドライブシャフトが一定の回転角(分解能、ステップ角)を回転する毎にパルス信号(A相信号とB相信号)を2相、例えば90度の位相差でもって出力する。また、ドライブシャフトエンコーダ235は、ドライブシャフトが1回転する毎に原点用のパルス信号(Z相信号)を出力する。出力軸エンコーダ236は、ドライブシャフトエンコーダ235と典型的には同一機能及び性能を備えたものが採用され、ドライブギアシャフトが上記同一のステップ角(分解能)を回転する毎にパルス信号(A相信号とB相信号)を2相、例えば90度の位相差でもって出力し、またドライブギアシャフトが1回転する毎に原点用のパルス信号(Z相信号)を出力する。
(構成の説明)図5
図5は、本実施形態に係るロボット装置の構成を示すブロック図である。本実施形態に係るロボット装置のロボットアーム機構の関節部J1,J2,J3,J4,J5、J6には、アクチュエータとして、それぞれステッピングモータ310,320,330,340,350,360が設けられている。ステッピングモータ310,320,330,340,350,360には、ドライバユニット210、220,230,240,250,260が電気的に接続されている。これらドライバユニット210、220,230,240,250,260は、同一の構成を有し、外部の制御装置100からの制御信号(指令値)に従って、制御対象のステッピングモータ310,320,330,340,350,360を駆動する。ここではドライバユニット230の構成及び動作を説明する。他のドライバユニット210,220,240,250,260の構成及び動作はドライバユニット230の構成及び動作と同一であるので説明は省略する。
図5は、本実施形態に係るロボット装置の構成を示すブロック図である。本実施形態に係るロボット装置のロボットアーム機構の関節部J1,J2,J3,J4,J5、J6には、アクチュエータとして、それぞれステッピングモータ310,320,330,340,350,360が設けられている。ステッピングモータ310,320,330,340,350,360には、ドライバユニット210、220,230,240,250,260が電気的に接続されている。これらドライバユニット210、220,230,240,250,260は、同一の構成を有し、外部の制御装置100からの制御信号(指令値)に従って、制御対象のステッピングモータ310,320,330,340,350,360を駆動する。ここではドライバユニット230の構成及び動作を説明する。他のドライバユニット210,220,240,250,260の構成及び動作はドライバユニット230の構成及び動作と同一であるので説明は省略する。
ステッピングモータ330は、ロータの周囲に複数のステータコイルを配置してなる。ステータコイルはスイッチング素子を介して電源回路232に接続される。これらスイッチング素子は、パルス信号発生部233から供給されるパルス信号によりオンされる。これらスイッチング素子が順番にオンされることで、ステッピングモータ330(ロータ)は、所定のステップ角で順次回転する。ステッピングモータ330の回転速度は、パルス信号の周波数(パルス周波数)を変化させることで変える事ができる。
ドライバユニット230は、ステッピングモータ330の駆動および停止を制御する。ドライバユニット230は、制御部231と、電源回路232と、パルス信号発生部233と、ドライブシャフトエンコーダ235と、出力軸エンコーダ236と、カウンタ237と、カウンタ238とを有する。制御部231は、制御装置100から入力された指令値に従って、ドライバユニット230を統括して制御する。
制御部231には制御装置100からステッピングモータ330の励磁電流値を表す指令値(電流指令コード)が供給される。制御部231では電源回路232に対して電流指令コードに従った電流を発生するための制御を実行する。電源回路232は、電流可変のAC/DC変換方式電源回路であり、電流指令コードにより指定された励磁電流値の電流を発生する。発生された励磁電流はステッピングモータ330のステータコイルに供給される。
また制御部231には制御装置100から次の伸縮距離を表す指令値(位置指令コード)が供給される。次の伸縮長とは、所定の制御周期Δt(例えば、10ms)後の伸縮距離を指す。なお、伸縮距離とは、アーム部2が最も収縮した状態からの距離を表す。なお、指令値としては、関節部J1,J2,J4,J5、J6のドライバユニットの制御部であれば、関節角度として与えられる。関節角度とは、基準位置(原点)からの正負の回転角度を表す。伸縮距離と関節角度とを関節変数と総称する。
制御部231は、パルス信号発生部233に対して、位置指令コードに応じたパルス制御信号を出力する。具体的には、制御部231は、現在の伸縮距離から制御装置100から入力された所定の制御周期△t後の伸縮距離との距離差を変位するために必要なドライブギア50の回転角度をステップ長で除算することによりパルス数を決定し、制御周期△tをパルス数で除算しその逆数によりパルス周波数を決定する。制御部231は、決定したパルス条件(パルス数とパルス周波数)に対応するパルス制御信号をパルス信号発生部233に対して出力する。
パルス信号発生部233は、制御部231から出力されたパルス制御信号で与えられたパルス数のパルスを、ステータコイルと電源回路232との間のスイッチング素子に対してパルス周波数で順次切り替えながら供給する。これにより周期Δtにステッピングモータ330は上記距離差を変位するために必要なドライブギア50の回転角度だけ回転し、それにより指令された伸縮距離までアーム部2は伸縮する。同様に、関節部J1,J2,J4、J5,J6に対応するドライバユニット210,220、240,250,260各々には、次の関節角度を表す位置指令コードが制御装置100から入力され、これにより関節部J1,J2,J4,J5,J6各々は指令された関節角度まで回転される。
制御部231には制御装置100から関節部J3を現在位置で停止させるための動作停止信号が入力される。ステッピングモータ330は、現在位置に対応する相のステータコイルに継続的に電流を供給することによりその位置で停止する。そのために、制御部231には、動作停止信号として、例えば関節部J3の現在の伸縮距離(関節変数)を表すコードが与えられる。同様に、関節部J1,J2、J4、J5,J6に対応するドライバユニット210、220,240,250,260各々には現在の関節角度を表すコードを含む動作停止信号が制御装置100から入力される。これにより、ロボットアーム機構の動作が停止する。
ドライブシャフトエンコーダ235は、ドライブシャフトが一定の回転角(分解能、エンコーダステップ角)を回転する毎にパルスを出力する。実際には順/逆の回転方向を識別するためにA相/B相の2種のパルスが出力される。ドライブシャフトエンコーダ235は、ドライブシャフトが1回転する毎に原点用のパルス(Z相パルス)をカウンタ237に対して出力する。カウンタ237は、ドライブシャフトエンコーダ235から出力されたA相(又はB相)パルスを回転方向に応じて加減算をする。カウンタ237は、ドライブシャフトエンコーダ235からZ相パルスが出力されると、カウント値をリセットする。したがって、エンコーダパルスのカウント値は、ドライブシャフトの原点からの回転変位(回転角度)を表す。カウンタ237は、ドライブシャフトエンコーダ235から出力されたZ相パルスも計数する。Z相パルスのカウント値は“回転数”を表す。以下、単に「カウント値」というときは、回転角度を表すカウント値と回転数を表すカウント値との総称するものとし、両者を区別する場合には「回転角度を表すカウント値」と「回転数を表すカウント値」を称するものとする。カウンタ237からは一定周期△Tごとにカウント値が出力される。この周期△Tは上記制御周期△tと同一でも良いし、相違するものであっても良い。カウンタ237から出力されるドライブシャフトの回転に係るカウント値のデータは、制御装置100のシステム制御部101の制御に従って、ドライバユニットインターフェース107を介して制御装置100に取り込まれる。
出力軸エンコーダ236は、ドライブシャフトエンコーダ235と同様であり、ドライブギア331の回転軸(ドライブギアシャフト、出力軸)が一定の回転角を回転する毎にパルス信号(A相/B相)をカウンタ238に対して出力し、ドライブギアシャフトが1回転する毎に原点用のパルス信号(Z相信号)をカウンタ238に対して出力する。カウンタ238では、出力軸エンコーダ236から出力されたA相パルス(又はB相パルス)を計数し、またZ相パルスを計数する。ドライブギアシャフトの回転数を表すカウント値を、ドライブギアシャフトの回転数を表すカウント値とともに一定周期△Tごとに出力する。
制御装置100は、システム制御部101と、操作部インターフェース102と、記憶部103と、計算処理部104と、衝突判定部105と、表示制御部106と、ドライバユニットインターフェース107と、出力部とを有する。
制御装置100には、システム制御部101の制御に従って、ドライバユニット210−260各々から、ドライブシャフトの回転角度を表すカウント値と回転数を表すカウント値に関するデータと、ドライブギアシャフトの回転角度を表すカウント値と回転数を表すカウント値とに関するデータとが、ドライバユニットインターフェース107を介して所定の制御周期△T毎(例えば、10ms毎)に供給される。
制御装置100には、システム制御部101の制御に従って、ドライバユニット210−260各々から、ドライブシャフトの回転角度を表すカウント値と回転数を表すカウント値に関するデータと、ドライブギアシャフトの回転角度を表すカウント値と回転数を表すカウント値とに関するデータとが、ドライバユニットインターフェース107を介して所定の制御周期△T毎(例えば、10ms毎)に供給される。
制御装置100には、操作部インターフェース102を介して操作部60が接続されている。操作部60は、手首部4又はロボットハンド(手先効果器)の着目点の位置の変更、姿勢の変更および変更時間をオペレータが入力するための入力インターフェースとして機能する。例えば、操作部60は、ロボットハンドを移動させる最終目標位置と移動時間とを指定するためのジョイスティック等を備える。例えば、ジョイスティックが操作された方向、ジョイスティックが傾けられた角度、ジョイスティックの操作加速度に基づいて、ロボットハンドの最終目標位置と移動時間とが入力される。また、操作部60は、ロボットアーム機構の動作を停止するための動作停止ボタンを備える。なお、操作部60を構成するこれらの入力デバイスは、他のデバイス、例えば、マウス、キーボード、トラックボールおよびタッチパネル等で代替が可能である。例えば、ダイレクトティーチング時のペンダントとしの操作部60は、典型的にはタッチパネル等が採用される。
システム制御部101は、CPU(Central Processing Unit)と半導体メモリ等を有し、制御装置100を統括して制御する。システム制御部101には、制御/データバス120を介して各部が接続されている。
ドライブシャフト(入力軸)の回転角度と回転数に対して、減速比αで換算した上で、ドライブギア331のシャフト(出力軸)の回転角度と回転数に差異(回転ずれ、角度差)が生じているとき、衝突等の外乱が生じている恐れがある。しかし、それが伝達機構のベルト伸縮やバックラッシュ等のガタによるものである場合もあり、それを排除するために、ここでは上記「回転ずれ」に対して閾値を設定し、上記「回転ずれ」が閾値を超過しているときに、そのずれが衝突等の外乱に起因するものであると判定する。記憶部103はこの閾値θthのデータを記憶する。同様に、記憶部103は、関節部J1,J2,J4,J5、J6各々に対応する回転ずれの原因が、伝達機構のガタによる場合を排除し、衝突等の外乱によるものであるか否かを判定するための閾値のデータを記憶する。閾値は、それぞれの伝達機構のガタにより設定されているが、操作部60を介してオペレータ指示に従って任意に変更することもできる。また、記憶部103は、ロボット装置に干渉物が衝突したことをオペレータに対して通知するためのメッセージを有する通知画像のデータを記憶する。
計算処理部104は、ドライバユニット210―260各々に対して指令値として与える、制御周期Δt経過後の関節変数ベクトルを計算する。なお、関節変数ベクトルとは、関節部J1−J6の6つの関節変数、つまり回転関節部J1、J2、J4−J6の関節角度と直動伸縮関節部J3の直動変位との6変数をいう。
まず、計算処理部104は、制御周期Δt経過後の関節変数ベクトルを計算するために、手先着目点の現在位置・姿勢を計算する。具体的には、計算処理部104104は、ドライバユニット210−260各々のカウンタにより計数されたドライブシャフトの回転角度と回転数とによりエンコーダ原点からの累積カウント値を計算し、累積カウント値に1カウントに対応するステップ角を乗算することにより、関節部J1−J6各々の現在の関節変数を計算する。計算処理部104は、同次変換行列Kにパラメータとして関節部J1−J6各々の現在の関節変数を代入することにより、ロボット座標系Σbから見た手先着目点の現在位置・姿勢を計算する。同次変換行列Kは、手先座標系Σhとロボット座標系Σbとの関係を定義する行列式である。同次変換行列Kは、ロボットアーム機構を構成するリンク間の関係(リンク長とリンクのねじれ角)と関節部の軸間の関係(リンク間距離とリンクの間角度)とで決まる。計算処理部104104は、制御周期Δt毎に上述の計算処理を繰り返し行い、制御周期Δt毎の手先着目点の現在位置・姿勢を計算する。
次に、計算処理部104は、計算した関節部J1−J6各々の現在の関節変数と、操作部50を介してオペレータにより入力された手先の最終目標位置・姿勢とに基づいて、その間を結ぶ単位時間△t(制御周期、例えば10ms)毎の手先着目点の目標位置の点列を計算する。具体的には、計算処理部104は、予めプリセットされている、手先着目点の軌道計算式に、パラメータとして手先着目点の現在位置・姿勢と手先着目点の最終目標位置・姿勢を代入することにより、手先着目点の軌道(以下、手先軌道という)を計算し、その手先軌道上に単位時間△t毎の目標位置の点列を計算する。軌道計算方法としては任意の方法が採用される。
最後に、計算処理部104は、計算した複数の目標位置にそれぞれ対応する複数の関節変数ベクトルを計算する。具体的には、計算処理部104は、手先着目点の現在位置・姿勢と、制御周期Δt経過後の次の目標位置・姿勢と、制御周期Δtとに基づいて、手先速度を計算し、計算した手先速度をヤコビアン逆行列を用いて関節角速度に変換する。ヤコビアン逆行列は、手先着目点の位置・手先姿勢を表すベクトルの関節変数による編微分で与えられ、手先速度(手先位置・姿勢の微小変化)を関節角速度(関節角度・伸縮長の微小変化)に変換する行列である。ヤコビアン逆行列は、現在の関節変数ベクトルとアーム構造のリンクパラメータとにより計算される。計算処理部104は、関節角速度に単位時間△tを乗算することにより、単位時間△tの間の各関節部の変位量を計算し、計算した各関節部の変位量を移動直前(現在)の関節変数ベクトルに加算することにより、単位時間△t経過後の関節変数ベクトルを計算する。
出力部108は、システム制御部101の制御に従って、計算処理部104で計算された関節部J1−J6各々の指令値(関節変数)を、ドライバユニット210−260各々に対して出力する。また、出力部108は、システム制御部101の制御に従って、動作停止信号をドライバユニット210−260各々に対して出力する。
衝突判定部105は、ドライブシャフトエンコーダ235の出力と出力軸エンコーダ236の出力に基づいて、実際にはそれらのカウンタ237,238のカウント値に基づいてロボットアーム部2等に干渉物が衝突する等の外乱因子に起する動作異常が発生したか否かを判定する。ここでは動作異常として干渉物の衝突を例に説明する。衝突判定部105は「ロボット装置に干渉物が衝突した」と判定したとき、衝突判定信号を出力する。衝突判定部105の詳細は後述する。
システム制御部101は、衝突判定部105から衝突判定信号が出力されたとき、記憶部103から通知画像を読み出し、表示制御部106のフレームメモリに書き込む。表示制御部106は、フレームメモリに格納された画像のデータを読み出し、表示部70に表示する。表示部70としては、典型的に例えばCRTディスプレイや液晶ディスプレイ、有機ELディスプレイ、プラズマディスプレイ等が挙げられる。
(衝突判定処理) 図6
本実施形態に係るロボット装置は、ロボット装置に干渉物が衝突したか否かを判定するための衝突判定機能を有する。衝突判定機能に係る処理を衝突判定処理という。衝突判定部105による衝突判定処理は衝突判定周期(例えば制御周期(10ms)に等価)毎に繰り返し行われる。図6は、図5の衝突判定部105による衝突判定処理の手順を示すフローチャートである。ここでは、関節部J3の衝突判定処理について説明する。なお、衝突判定部105は、図6と同様の手順で他の関節部J1,J2,J4,J5,J6各々の衝突判定処理を行うことができる。
本実施形態に係るロボット装置は、ロボット装置に干渉物が衝突したか否かを判定するための衝突判定機能を有する。衝突判定機能に係る処理を衝突判定処理という。衝突判定部105による衝突判定処理は衝突判定周期(例えば制御周期(10ms)に等価)毎に繰り返し行われる。図6は、図5の衝突判定部105による衝突判定処理の手順を示すフローチャートである。ここでは、関節部J3の衝突判定処理について説明する。なお、衝突判定部105は、図6と同様の手順で他の関節部J1,J2,J4,J5,J6各々の衝突判定処理を行うことができる。
(ステップS11)
システム制御部101の制御に従って、ステッピングモータ330のドライブシャフト(入力軸)の回転角度と回転数とを表すカウント値がカウンタ237から制御装置100に取り込まれる。同様に、システム制御部101の制御に従って、ドライブギア331のドライブギアシャフト(出力軸)の回転角度と回転数とを表すカウント値がカウンタ238から一定の周期△Tで繰り返し制御装置100に供給される。
システム制御部101の制御に従って、ステッピングモータ330のドライブシャフト(入力軸)の回転角度と回転数とを表すカウント値がカウンタ237から制御装置100に取り込まれる。同様に、システム制御部101の制御に従って、ドライブギア331のドライブギアシャフト(出力軸)の回転角度と回転数とを表すカウント値がカウンタ238から一定の周期△Tで繰り返し制御装置100に供給される。
(ステップS12)
ステップS11で入力されたドライブシャフトの回転に関するカウント値に基づいて、衝突判定部105によりドライブシャフトの回転に関する累計カウント値が順次計算され、記憶される。現在の累計カウント値と、1周期前(△T)の累計カウント値に対するカウント値との差(変位)Ninが衝突判定部105により計算される。
ステップS11で入力されたドライブシャフトの回転に関するカウント値に基づいて、衝突判定部105によりドライブシャフトの回転に関する累計カウント値が順次計算され、記憶される。現在の累計カウント値と、1周期前(△T)の累計カウント値に対するカウント値との差(変位)Ninが衝突判定部105により計算される。
同様に、ドライブギアシャフトの回転に関するカウント値に基づいて、衝突判定部105によりドライブギアシャフトの回転に関する累計カウント値が順次計算され、記憶される。現在の累計カウント値と、1周期前の累計カウント値との差(変位)Noutが衝突判定部105により計算される。
(ステップS13)
ステップS12で計算されたドライブシャフトの回転に関するカウント値の変位Ninにドライブシャフトエンコーダ235の分解能(ステップ角)Δθinを乗算することにより、1周期△Tの間のステッピングモータ330の回転角度変位θinが計算される。同様に、ステップS12で計算されたドライブギアシャフトの回転に関するカウント値の変位Noutに出力軸エンコーダ236の分解能(ステップ角)Δθoutを乗算することにより、1周期の間のドライブギア331の回転角度変位θoutが計算される。
ステップS12で計算されたドライブシャフトの回転に関するカウント値の変位Ninにドライブシャフトエンコーダ235の分解能(ステップ角)Δθinを乗算することにより、1周期△Tの間のステッピングモータ330の回転角度変位θinが計算される。同様に、ステップS12で計算されたドライブギアシャフトの回転に関するカウント値の変位Noutに出力軸エンコーダ236の分解能(ステップ角)Δθoutを乗算することにより、1周期の間のドライブギア331の回転角度変位θoutが計算される。
(ステップS14)
ステップS13で計算された1周期△Tの間のステッピングモータ330の回転角度の変位θinに対する、ステップS13で計算された1周期△Tの間のドライブギア331の回転角度の変位θoutを減速比αにより換算、つまり変位θoutに減速比αの逆数を乗算した角度の差、つまり入力軸と出力軸との間の「回転ずれ」を計算する。計算した角度差の絶対値が、伝達機構のベルト伸縮やバックラッシュ等のガタに起因する回転ずれを排除するために既定された閾値θth以下のとき(ステップS14のNo)、衝突判定部105は「ロボット装置に干渉物が衝突していない」と判定し、ステップS11に処理が戻る。一方、計算した角度差の絶対値が、閾値θthよりも大きいとき(ステップS14のYes)、衝突判定部105は「ロボット装置に干渉物が衝突した」と判定し、衝突判定信号を出力する。
ステップS13で計算された1周期△Tの間のステッピングモータ330の回転角度の変位θinに対する、ステップS13で計算された1周期△Tの間のドライブギア331の回転角度の変位θoutを減速比αにより換算、つまり変位θoutに減速比αの逆数を乗算した角度の差、つまり入力軸と出力軸との間の「回転ずれ」を計算する。計算した角度差の絶対値が、伝達機構のベルト伸縮やバックラッシュ等のガタに起因する回転ずれを排除するために既定された閾値θth以下のとき(ステップS14のNo)、衝突判定部105は「ロボット装置に干渉物が衝突していない」と判定し、ステップS11に処理が戻る。一方、計算した角度差の絶対値が、閾値θthよりも大きいとき(ステップS14のYes)、衝突判定部105は「ロボット装置に干渉物が衝突した」と判定し、衝突判定信号を出力する。
なお、上記説明ではドライブシャフトとドライブギアシャフトとの入出力軸間の回転ずれを衝突判定に利用しているが、ステッピングモータではその回転を指示する指令値による回転角度と、実際のドライブシャフトの回転角度とは原則的に等価であることを前提としている。したがって、衝突判定に、その指令値で指令された回転角度と、ステッピングモータ330から見て被駆動部としてのドライブギアのシャフトに係合された出力軸エンコーダ238のパルスのカウント値から求めた回転角度とを比較して、衝突等の動作異常の判定をするものであっても良い。
(ステップS15)
ステップS14で衝突判定部105により衝突判定信号が出力されると、システム制御部101は、ロボット装置に干渉物が衝突したことを通知する通知画像のデータを記憶部103から読み出し表示制御部106のフレームメモリに書き込む。
ステップS14で衝突判定部105により衝突判定信号が出力されると、システム制御部101は、ロボット装置に干渉物が衝突したことを通知する通知画像のデータを記憶部103から読み出し表示制御部106のフレームメモリに書き込む。
表示制御部106はフレームメモリに格納された通知画像のデータを読み出し、表示部70に表示する。これにより、表示部70にはロボット装置に干渉物が衝突したことを通知するメッセージが表示される。
(ステップS16)
ステップS14で衝突判定部105により衝突判定信号が出力されると、上記メッセージ出力とともに、システム制御部101により、出力部108から指令値の出力を停止させ、ロボットアーム機構の動作を停止(緊急停止)させ、ロボット装置に与えられている作業(タスク)を中断し、タスクスケジュール自体をリセットする。
ステップS14で衝突判定部105により衝突判定信号が出力されると、上記メッセージ出力とともに、システム制御部101により、出力部108から指令値の出力を停止させ、ロボットアーム機構の動作を停止(緊急停止)させ、ロボット装置に与えられている作業(タスク)を中断し、タスクスケジュール自体をリセットする。
なお、衝突判定部105では関節部J1−J6の少なくとも一つについて衝突が発生したと判定されたとき、衝突判定信号を出力する。換言すると、衝突判定部105は関節部J1−J6についての6系統の工程S14の比較出力(Yesフラグ“1”、Noフラグ“0”)をOR回路に導入し、その中の一つでも回転ずれが閾値を超過していてフラグ“1”がたっているときに、フラグ“1”を出力し、それにしたがって衝突判定信号を出力する。
つまり、本実施形態では、アーム部2やハンド部に対してどのような方向からどの箇所に作業員等が接触又は衝突したとしても、必ず関節部J1−J6の少なくとも一つについて衝突判定がなされることになる。
(ステップS17、S18)
衝突発生によりタスクタイム管理は崩れており、タスク動作は例えばラインの搬送機器等の外部機器との連携も必要であることから、アーム動作再開に限定されるものではなく、タスク動作それ自体を再開させる必要がある。また衝突の原因解消も必要とされる。従って工程S16による動作停止後、システム制御部101はオペレータによるタスク再開の指示を待って、タスクを再開させる。
衝突発生によりタスクタイム管理は崩れており、タスク動作は例えばラインの搬送機器等の外部機器との連携も必要であることから、アーム動作再開に限定されるものではなく、タスク動作それ自体を再開させる必要がある。また衝突の原因解消も必要とされる。従って工程S16による動作停止後、システム制御部101はオペレータによるタスク再開の指示を待って、タスクを再開させる。
例えば、工程S16による動作停止時点から一定時間経過しても、オペレータによるタスク再開の指示がないとき、アーム動作を終了する。
(効果)
以上説明した関節部J3の衝突判定処理によれば、ロボット装置の関節部J3よりも先端部分に対して、関節部J3の第3移動軸RA3に平行な成分を有する外部トルクが発生するような干渉物の衝突を検知することができる。この衝突判定処理は、関節部J3に設けられたドライブシャフトエンコーダ235の回転角度と出力軸エンコーダ236の回転角度との間に所定の角度差が発生したか否かで行う。これは、関節部J3のアーム部2が伸縮する方向(第3移動軸に平行な方向)に、干渉物の衝突による外部トルクが発生したとき、ステッピングモータ330の回転角度とドライブギア331(関節部)の実際の回転角度との間に角度差が生じることを利用している。しかしながら、ステッピングモータ330とドライブギア331との間の伝達機構は、弾性変形等するため、動作開始時や動作停止時に関節部に働く慣性等の、衝突ではない理由によって、ステッピングモータ330の回転角度とドライブギア331の実際の回転角度との間に角度差が生じる場合がある。このような場合を衝突判定から除外するために、角度差に閾値を設けることで、角度差が閾値を超過したときにのみ、「ロボット装置に干渉物が衝突した」と判定することができる。
以上説明した関節部J3の衝突判定処理によれば、ロボット装置の関節部J3よりも先端部分に対して、関節部J3の第3移動軸RA3に平行な成分を有する外部トルクが発生するような干渉物の衝突を検知することができる。この衝突判定処理は、関節部J3に設けられたドライブシャフトエンコーダ235の回転角度と出力軸エンコーダ236の回転角度との間に所定の角度差が発生したか否かで行う。これは、関節部J3のアーム部2が伸縮する方向(第3移動軸に平行な方向)に、干渉物の衝突による外部トルクが発生したとき、ステッピングモータ330の回転角度とドライブギア331(関節部)の実際の回転角度との間に角度差が生じることを利用している。しかしながら、ステッピングモータ330とドライブギア331との間の伝達機構は、弾性変形等するため、動作開始時や動作停止時に関節部に働く慣性等の、衝突ではない理由によって、ステッピングモータ330の回転角度とドライブギア331の実際の回転角度との間に角度差が生じる場合がある。このような場合を衝突判定から除外するために、角度差に閾値を設けることで、角度差が閾値を超過したときにのみ、「ロボット装置に干渉物が衝突した」と判定することができる。
なお、関節部J3の衝突判定処理では、ロボット装置の関節部J3よりも先端部分に対して、関節部J3の第3移動軸RA3に平行な成分を有する外部トルクが発生するような干渉物の衝突した検知することができない。しかしながら、他の関節部J1、J2,J4,J5,J6に対しても、関節部J3と同様の衝突判定処理を行うことで、より網羅的にロボットアーム機構への干渉物の衝突を検知することができる。例えば、関節部J1の衝突判定処理によれば、ロボット装置の関節部J1よりも先端部分に対して、関節部J1の第1回転軸RA1に直交する成分を有する外部トルクが発生するような干渉物の衝突を検出することができる。また、関節部J2の衝突判定処理によれば、ロボット装置の関節部J2よりも先端部分に対して、関節部J2の第1回転軸RA2に直交する成分を有する外部トルクが発生するような干渉物の衝突を検出することができる。以上説明した本実施形態に係るロボット装置によれば、ロボットアーム機構の関節部J1−J6各々に対する衝突判定処理により、ロボットアーム機構への干渉物の接触を網羅的に検知するができる。つまり、本実施形態では、アーム部2やハンド部に対してどのような方向からどの箇所に作業員等が接触又は衝突したとしても、必ず関節部J1−J6の少なくとも一つについて衝突判定がなされることになる。
上記説明では、衝突等の動作異常判定は、ステッピングモータ330のモータドライバ230から見て外部の制御装置100の衝突判定部105で行なっていたが、ステッピングモータ330のモータドライバ230の制御部231(モータ制御装置)においてカウンタ237,238の出力を比較して、又は外部の制御装置100からの指令値と出力軸エンコーダ236のカウンタ238のカウント値とを比較して衝突判定を行うようにしてもよい。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
41…表示部、60…操作部、100…制御装置、101…システム制御部、102…操作部I/F、103…記憶部、104…計算処理部、105…衝突判定部、106…表示制御部、107…ドライバユニットI/F、108…出力部、120…データ/制御バス、210〜260…ドライバユニット、231…制御部、232…電源回路、233…パルス信号発生部、235…ドライブシャフトエンコーダ、235…出力軸エンコーダ、236、237…カウンタ、310〜360…ステッピングモータ
Claims (8)
- 多関節アーム機構を備えるロボット装置において、
複数のリンクと、
前記複数のリンク間を接続する複数の関節部と、
前記複数の関節部を駆動するための動力を発生する複数のモータと、
前記複数の関節部の少なくとも一の関節部のモータのドライブシャフトの回転を前記少なくとも一の関節部の回転軸に伝達する伝達機構と、
前記少なくとも一の関節部のモータのドライブシャフトの回転を検出する第1エンコーダと、
前記少なくとも一の関節部の回転軸の回転を検出する第2エンコーダと、
前記第1エンコーダから出力されるエンコーダパルスと前記第2エンコーダから出力されるエンコーダパルスとに基づいて動作異常の判定をする判定部とを具備することを特徴とするロボット装置。 - 前記判定部は、前記第1エンコーダから出力されるエンコーダパルスの数に前記第1エンコーダのステップ角を乗算した回転角度に対する、前記第2エンコーダから出力されるエンコーダパルスの数に前記第2エンコーダのステップ角を乗算した回転角度の前記伝達機構の減速比により換算した角度差が所定の閾値を超過するとき、前記動作異常を判定することを特徴とする請求項1記載のロボット装置。
- 前記判定部は、前記第1エンコーダから出力されるエンコーダパルスの数と前記第2エンコーダから出力されるエンコーダパルスの数とに基づいて前記動作異常を判定することを特徴とする請求項1記載のロボット装置。
- 前記判定部により動作異常が判定されたとき、表示又は音あるいは両方により警告を出力する出力部をさらに備えることを特徴とする請求項1記載のロボット装置。
- 前記判定部により動作異常が判定されたとき、前記複数のモータの駆動を停止する制御部をさらに備えることを特徴とする請求項1記載のロボット装置。
- リンク間を接続する関節部と、
前記関節部を駆動するための動力を発生するモータと、
前記モータのドライブシャフトの回転を前記リンクに接続される前記関節部の回転軸に伝達する伝達機構と、
前記モータのドライブシャフトの回転を検出する第1エンコーダと、
前記関節部の回転軸の回転を検出する第2エンコーダと、
前記第1エンコーダから出力されるエンコーダパルスと前記第2エンコーダから出力されるエンコーダパルスとに基づいて動作異常の判定をする判定部とを具備することを特徴とするアーム機構。 - 被駆動部を駆動するための動力を発生するモータを制御するモータ制御装置において、
前記モータのドライブシャフトの回転を検出する第1エンコーダと、
前記被駆動部の回転を検出する第2エンコーダと、
前記第1エンコーダから出力されるエンコーダパルスと前記第2エンコーダから出力されるエンコーダパルスとに基づいて動作異常の判定をする判定部とを具備することを特徴とするモータ制御装置。 - 被駆動部を駆動するための動力を発生するモータを制御するモータ制御装置において、
外部からの指令値に従って前記モータを駆動する駆動部と、
前記被駆動部の回転を検出するエンコーダと、
前記指令値と前記エンコーダから出力されるエンコーダパルスとに基づいて動作異常の判定をする判定部とを具備することを特徴とするモータ制御装置。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015124219A JP2017007023A (ja) | 2015-06-19 | 2015-06-19 | ロボット装置及びモータ制御装置 |
CN201680035535.XA CN107708943A (zh) | 2015-06-19 | 2016-06-12 | 机器人装置及马达控制装置 |
PCT/JP2016/067461 WO2016204099A1 (ja) | 2015-06-19 | 2016-06-12 | ロボット装置及びモータ制御装置 |
EP16811573.1A EP3311964A1 (en) | 2015-06-19 | 2016-06-12 | Robot apparatus and motor control device |
TW105119210A TW201702029A (zh) | 2015-06-19 | 2016-06-17 | 機器人裝置及馬達控制裝置 |
US15/839,629 US20180099422A1 (en) | 2015-06-19 | 2017-12-12 | Robot device and motor control device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015124219A JP2017007023A (ja) | 2015-06-19 | 2015-06-19 | ロボット装置及びモータ制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017007023A true JP2017007023A (ja) | 2017-01-12 |
Family
ID=57545334
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015124219A Pending JP2017007023A (ja) | 2015-06-19 | 2015-06-19 | ロボット装置及びモータ制御装置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20180099422A1 (ja) |
EP (1) | EP3311964A1 (ja) |
JP (1) | JP2017007023A (ja) |
CN (1) | CN107708943A (ja) |
TW (1) | TW201702029A (ja) |
WO (1) | WO2016204099A1 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020044610A (ja) * | 2018-09-19 | 2020-03-26 | 株式会社デンソーウェーブ | ロボットの制御方法 |
TWI691152B (zh) * | 2018-09-27 | 2020-04-11 | 台達電子工業股份有限公司 | 機器人系統 |
US10814502B2 (en) | 2018-09-27 | 2020-10-27 | Delta Electronics, Inc. | Robotic system |
WO2023007634A1 (ja) * | 2021-07-28 | 2023-02-02 | ファナック株式会社 | ロボットシステム |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6468804B2 (ja) * | 2014-10-30 | 2019-02-13 | ライフロボティクス株式会社 | ロボットアーム機構 |
JP6632487B2 (ja) * | 2016-07-13 | 2020-01-22 | キヤノン株式会社 | 連続体ロボット、その運動学の補正方法、および連続体ロボットの制御方法 |
JP6669895B2 (ja) | 2016-12-27 | 2020-03-18 | オリンパス株式会社 | マニピュレータシステム |
JP6904767B2 (ja) * | 2017-04-18 | 2021-07-21 | キヤノン株式会社 | 連続体ロボットシステムの制御装置、連続体ロボットシステムの作動方法、プログラム |
JP7007839B2 (ja) * | 2017-08-31 | 2022-01-25 | 川崎重工業株式会社 | 多関節ロボット |
EP3709925A1 (en) * | 2017-11-15 | 2020-09-23 | Steerable Instruments NV | Controllable steerable instrument |
EP3623113A1 (en) * | 2018-09-14 | 2020-03-18 | Universal Robots A/S | Obtaining the gear stiffness of a robot joint gear of a robot arm |
JP7149792B2 (ja) * | 2018-09-25 | 2022-10-07 | 東京エレクトロン株式会社 | 搬送装置、半導体製造装置及び搬送方法 |
WO2020067240A1 (ja) * | 2018-09-28 | 2020-04-02 | 日本電産株式会社 | 制御装置 |
JP7234577B2 (ja) * | 2018-10-31 | 2023-03-08 | セイコーエプソン株式会社 | ロボットシステム、ロボット制御方法、及びエンコーダー |
JP6898366B2 (ja) * | 2019-01-22 | 2021-07-07 | ファナック株式会社 | ロボット装置及び熱変位量推定装置 |
JP6989540B2 (ja) * | 2019-01-29 | 2022-01-05 | ファナック株式会社 | ロボット |
JP7224199B2 (ja) * | 2019-02-12 | 2023-02-17 | Juki株式会社 | ミシンの制御方法及びミシンの制御装置 |
CN110518856A (zh) * | 2019-08-09 | 2019-11-29 | 深圳市海浦蒙特科技有限公司 | 电机位置矫正方法、门电机控制方法和系统以及电梯 |
JP7294980B2 (ja) * | 2019-10-15 | 2023-06-20 | ファナック株式会社 | 制御システム、制御装置、及びロボット |
CN114619439B (zh) * | 2020-12-11 | 2023-06-13 | 郑州思昆生物工程有限公司 | 多轴机械臂防撞击保护控制系统 |
JP2022119095A (ja) * | 2021-02-03 | 2022-08-16 | セイコーエプソン株式会社 | ロボット制御装置およびロボットシステム |
KR20220120009A (ko) * | 2021-02-22 | 2022-08-30 | 현대자동차주식회사 | 로봇의 충돌 감지 장치 및 그 방법 |
WO2024132978A1 (en) * | 2022-12-22 | 2024-06-27 | Sony Group Corporation | Method and apparatus for collision avoidance for a kinematic structure, and robotic system |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4445184A (en) * | 1980-07-19 | 1984-04-24 | Shin Meiwa Industry Co., Ltd. | Articulated robot |
US5568592A (en) * | 1994-10-13 | 1996-10-22 | Hewlett-Pacard Company | System and method for conserving power in an optical autochanger |
JPH10249760A (ja) * | 1997-03-11 | 1998-09-22 | Shibaura Eng Works Co Ltd | 産業用ロボット |
CA2273729A1 (en) * | 1998-07-14 | 2000-01-14 | Bayer Corporation | Robotics for transporting containers and objects within an automated analytical instrument and service tool for servicing robotics |
JP4801534B2 (ja) * | 2006-08-30 | 2011-10-26 | 本田技研工業株式会社 | ロボット関節機構 |
JP2010228028A (ja) * | 2009-03-26 | 2010-10-14 | Nec Corp | ロボットアーム、ロボットアームの接触検知方法、及び、ロボットアームを備えた装置 |
CN101590323B (zh) * | 2009-07-08 | 2012-10-31 | 北京工业大学 | 独轮机器人系统及其控制方法 |
US20110071541A1 (en) * | 2009-09-23 | 2011-03-24 | Intuitive Surgical, Inc. | Curved cannula |
JP5849403B2 (ja) * | 2011-02-15 | 2016-01-27 | セイコーエプソン株式会社 | ロボットコントローラー、ロボット、及び、ロボットシステム |
JP5765686B2 (ja) * | 2012-03-23 | 2015-08-19 | トヨタ自動車東日本株式会社 | ロボット接触検知装置 |
US9226796B2 (en) * | 2012-08-03 | 2016-01-05 | Stryker Corporation | Method for detecting a disturbance as an energy applicator of a surgical instrument traverses a cutting path |
JP5511934B2 (ja) * | 2012-11-14 | 2014-06-04 | 三菱電機株式会社 | モータ制御装置、モータ制御方法および電動パワーステアリング装置 |
JP6164948B2 (ja) * | 2013-06-20 | 2017-07-19 | キヤノン株式会社 | ロボット装置及び部品の製造方法 |
JP2015093360A (ja) * | 2013-11-13 | 2015-05-18 | キヤノン株式会社 | 駆動装置、ロボット装置、駆動装置の制御方法、プログラム及び記録媒体 |
JP6383146B2 (ja) * | 2013-12-04 | 2018-08-29 | 株式会社ダイヘン | 精度取得装置 |
JP6512790B2 (ja) * | 2014-10-24 | 2019-05-15 | キヤノン株式会社 | ロボット制御方法、ロボット装置、プログラム、記録媒体及び物品の製造方法 |
US9757863B2 (en) * | 2015-01-30 | 2017-09-12 | Canon Kabushiki Kaisha | Robot apparatus, exchanger apparatus and robot system |
-
2015
- 2015-06-19 JP JP2015124219A patent/JP2017007023A/ja active Pending
-
2016
- 2016-06-12 CN CN201680035535.XA patent/CN107708943A/zh active Pending
- 2016-06-12 EP EP16811573.1A patent/EP3311964A1/en not_active Withdrawn
- 2016-06-12 WO PCT/JP2016/067461 patent/WO2016204099A1/ja active Application Filing
- 2016-06-17 TW TW105119210A patent/TW201702029A/zh unknown
-
2017
- 2017-12-12 US US15/839,629 patent/US20180099422A1/en not_active Abandoned
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020044610A (ja) * | 2018-09-19 | 2020-03-26 | 株式会社デンソーウェーブ | ロボットの制御方法 |
TWI691152B (zh) * | 2018-09-27 | 2020-04-11 | 台達電子工業股份有限公司 | 機器人系統 |
US10814502B2 (en) | 2018-09-27 | 2020-10-27 | Delta Electronics, Inc. | Robotic system |
WO2023007634A1 (ja) * | 2021-07-28 | 2023-02-02 | ファナック株式会社 | ロボットシステム |
Also Published As
Publication number | Publication date |
---|---|
US20180099422A1 (en) | 2018-04-12 |
CN107708943A (zh) | 2018-02-16 |
WO2016204099A1 (ja) | 2016-12-22 |
EP3311964A1 (en) | 2018-04-25 |
TW201702029A (zh) | 2017-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2016204099A1 (ja) | ロボット装置及びモータ制御装置 | |
JP6659238B2 (ja) | ロボット装置及びステッピングモータ制御装置 | |
JP5612971B2 (ja) | マスタスレーブマニピュレータ | |
US10259115B2 (en) | Work device | |
JP6595206B2 (ja) | 多関節アーム機構の動作制御装置及びロボット装置 | |
JP6399591B2 (ja) | ロボットアーム機構及びステッピングモータ制御装置 | |
WO2016208431A1 (ja) | ロボット装置 | |
JP7396850B2 (ja) | ロボット | |
WO2016104290A1 (ja) | ロボットシステム及びロボット装置 | |
WO2017150319A1 (ja) | 直動伸縮機構及びロボットアーム機構 | |
WO2018212307A1 (ja) | 減速機角度伝達誤差同定システム及び減速機角度伝達誤差同定方法 | |
WO2016084932A1 (ja) | ロボット装置及びロボット制御装置 | |
JP6576646B2 (ja) | リンク作動装置を用いた多関節ロボット | |
WO2016190141A1 (ja) | ロボット装置及びステッピングモータ制御装置 | |
US11305425B2 (en) | Angular transmission error identification system, angular transmission error identification method, and robot system | |
JP2012051043A (ja) | ロボットシステムまたはロボット制御装置 | |
WO2017022533A1 (ja) | ロボット装置 | |
JP2024063684A (ja) | ロボット、ロボットの制御方法、ロボットを用いた物品の製造方法、制御プログラム及び記録媒体 | |
US20180001486A1 (en) | Robot, robot control device, and robot system | |
JP7443013B2 (ja) | ロボット制御装置 | |
JP7282648B2 (ja) | ロボット制御装置 |