JP2004306158A - サーボモータの制御方法 - Google Patents
サーボモータの制御方法 Download PDFInfo
- Publication number
- JP2004306158A JP2004306158A JP2003099567A JP2003099567A JP2004306158A JP 2004306158 A JP2004306158 A JP 2004306158A JP 2003099567 A JP2003099567 A JP 2003099567A JP 2003099567 A JP2003099567 A JP 2003099567A JP 2004306158 A JP2004306158 A JP 2004306158A
- Authority
- JP
- Japan
- Prior art keywords
- axis
- servomotor
- passing point
- servo motor
- target position
- 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
Landscapes
- Manipulator (AREA)
- Control Of Position Or Direction (AREA)
- Numerical Control (AREA)
Abstract
【解決手段】マニピュレータの各軸に取り付けられたサーボモータを制御するために、各サーボモータの動作を制御するサーボアンプに当該マニピュレータの通過点と目標位置を送信し、当該通過点と目標位置に基づいて1のサーボモータの動作を制御し、当該1のサーボモータによって駆動される軸が前記通過点に達したことを検出し、前記通過点に達したことが検出されたときに他のサーボモータの駆動を開始する。
【選択図】 図3
Description
【発明の属する技術分野】
本発明は、PTP(ポイントツーポイント)制御における位置決めサイクルタイムを短縮するサーボモータの制御方法に関する。
【0002】
【従来の技術】
従来、自動車の車体溶接工程では、車体の位置決めや保持を行う治具としてNCロケーターが用いられている。NCロケーターは多品種の車体の位置決めに対応できるようにするために、位置決めのためのアクチュエータとして、位置決めのポイントがソフトウェアで自由に変更でき、また、高精度の位置決めが可能なサーボモータが用いられる。
【0003】
NCロケーターは、制御するサーボモータの数が膨大なため、コントローラとサーボアンプとをFAネットワーク回線で接続し、またサーボモータの動作を制御するサーボアンプもFAネットワーク対応型のものを採用している。
【0004】
FAネットワーク対応型のサーボアンプには、その動作指令がFAネットワーク回線を経由して送信されることから、コントローラからの動作指令がサーボモータに到達するまでの時間はFAネットワーク回線の混雑状況によってまちまちとなる。
【0005】
このため、コントローラが各サーボアンプに送信する動作指令の指示方式としては、逐次動作経路を指示する方式ではなく、最終的な目標位置だけを指示する方式が採用される。サーボアンプは、最終的な目標位置に基づき自ら動作経路を演算し、その動作経路に基づいてサーボモータを作動させる。サーボモータは、動作完了後にコントローラに対して動作完了信号を送信する。
【0006】
したがって、コントローラは、各サーボアンプからの動作完了信号を受信し、すべてのサーボアンプの動作が完了したことを確認した後、次の目標位置を各サーボアンプに送信する。
【0007】
ところが、このような指示方式では、すべてのサーボアンプが与えられた目標位置で位置決め停止することになり、目標位置を基準に加減速が繰り返される。したがって、NCロケーターとしてのサイクルタイムが長くなってしまう。
【0008】
このような不具合を解消するために、下記の特許文献1に記載されている発明では、一方のサーボモータがその動作区間における減速開始時または減速期間中に他方のサーボモータの動作区間における加速を開始させるべくその位置指令値をサーボ装置に出力するようにしている。
【0009】
【特許文献1】
特開平9−190224号公報
【0010】
【発明が解決しようとする課題】
しかしながら、特許文献1に記載されている発明では、一方のサーボモータの減速開始時または減速時に他方のサーボモータを加速させる技術であるため、一方のサーボモータが減速に入らなければ他方のサーボモータを動かすことはできない。したがって、サーボモータが目標位置に位置決めされたことを条件として次の目標位置を与える従来の指示方式に比較すればサイクルタイムの短縮は可能になるが、その短縮にも限界がある。
【0011】
本発明は、このような従来の技術の不具合を解消するために成されたものであり、PTP制御における位置決めサイクルタイムを短縮するサーボモータの制御方法の提供を目的とする。
【0012】
【課題を解決するための手段】
上記した課題を解決し、目的を達成するため、本発明にかかるサーボモータの制御方法は、マニピュレータの各軸に取り付けられたサーボモータを制御するためのサーボモータの制御方法であって、各サーボモータの動作を制御するサーボアンプに当該マニピュレータの通過点と目標位置を送信し、当該通過点と目標位置に基づいて1のサーボモータの動作を制御し、当該1のサーボモータによって駆動される軸が前記通過点に達したことを検出し、前記通過点に達したことが検出されたときに他のサーボモータの駆動を開始する。
【0013】
後から動作を開始するサーボモータは、作動中のサーボモータによって駆動される軸が通過点に達したときに動作を開始するので、通過点を適切な位置に設定しておくことによって、位置決めのサイクルタイムを短縮することができる。また、通過点は目標点間であればどの位置でも自由に設定することができるので、サイクルタイムの短縮の程度も変更が可能である。
【0014】
【発明の効果】
本発明のサーボモータの制御方法によれば、1のサーボモータによって駆動される軸が通過点に達したときに他のサーボモータの駆動を開始するようにしたので、位置決めのサイクルタイムを短縮することができる。
【0015】
【発明の実施の形態】
以下に添付図面を参照して、本発明にかかるサーボモータの制御方法の好適な実施の形態を「実施の形態1」から「実施の形態3」に分けて詳細に説明する。図1は、本発明にかかるサーボモータの制御方法を実施するための、すべての実施の形態に共通するFAネットワーク対応型サーボシステムの概略構成図である。
【0016】
NCロケーターの各軸を構成するロボットマニピュレータ1〜Nは、FAネットワーク回線を介してコントローラ10に接続される。各ロボットマニピュレータは、X、Y、Z軸駆動用の3台のサーボアンプと、それぞれのサーボアンプによって駆動されるサーボモータを備えている。すべてのサーボアンプはコントローラ10に接続され、コントローラ10はすべてのサーボアンプに「通過点」、「目標位置」、「非常停止」、「作動開始」の制御情報を送信し、また、すべてのサーボアンプから「通過点到達」、「目標位置到達」、「非常停止」の制御情報を受信する。つまり、コントローラ10は、すべてのサーボアンプから受信した制御情報に基づいて送信すべき制御情報をサーボアンプごとに演算し、演算した制御情報を各サーボアンプに送信する。
【0017】
図2は、本発明の内容の理解を容易にするために、図1のサーボシステムを簡略化したものであり、すべての実施の形態に適用される、2軸を駆動するためのサーボアンプを備えたロボットマニピュレータの概略構成を示している。
【0018】
コントローラ10には、マニピュレータ20をX軸方向に移動させるためのX軸用サーボアンプ30とマニピュレータ20をY軸方向に移動させるためのY軸用サーボアンプ40とが接続されている。X軸用サーボアンプ30はX軸用サーボモータ50の駆動を制御し、Y軸用サーボアンプ40はY軸用サーボモータ60の駆動を制御する。
【0019】
「実施の形態1」
図3は、本発明の実施の形態1にかかる手順を示すフローチャートである。このフローチャートはコントローラ10によって処理されるものであり、請求項1に記載した発明に対応するものである。
【0020】
まず、コントローラ10は、あらかじめ教示されているマニピュレータ20の作業軌跡に関するデータの中から、次の通過点と目標位置とを取り出して、これらの座標をX軸用サーボアンプ30とY軸用サーボアンプ40に送信する(S1)。たとえば、図6に示すように、教示されている通過点P1の座標が(P1X、P1Y)であり、目標位置P2の座標が(P2X、P2Y)であるとすれば、X軸用サーボアンプ30にはX座標の通過点であるP1XとX座標の目標位置であるP2Xが、また、Y軸用サーボアンプ40にはY座標の通過点であるP1YとY座標の目標位置であるP2Yがそれぞれ送信される。
【0021】
X軸用サーボアンプ30とY軸用サーボアンプ40は、送信された目標位置の座標に基づいて、X軸用サーボモータ50(1のサーボモータ)とY軸用サーボモータ60(他のサーボモータ)を独自に駆動するため図6に示すような速度指令を演算する。X軸用サーボモータ50とY軸用サーボモータ60は、それぞれの速度指令に基づいて個々にマニピュレータ20を駆動する(S2)。
【0022】
図6に示すように、X軸用サーボモータ50とY軸用サーボモータ60は同時に動作を開始する。図7に示すように、最初に移動量の小さいY軸が通過点P1Yに到達するので、Y軸用サーボアンプ40はY軸用サーボモータ60の駆動を止める。Y軸用サーボアンプ40はコントローラ10にY軸が通過点に達したことを通知する。一方、X軸はまだ通過点に達していないので、設定されている最高速度でマニピュレータ20をX軸上で移動させる。
【0023】
X軸が通過点(P1X)に到達すると、X軸用サーボアンプ30はコントローラ10にX軸が通過点に達したことを通知する。この通知によって、コントローラ10はX軸が通過点(P1X)に到達したことを検出する(S3)。
【0024】
コントローラ10は、X軸が通過点(P1X)に到達したことを検出すると、Y軸用サーボアンプ40に、次の通過点P2Yと次の目標位置P3Yを送信する。Y軸用サーボアンプ40はY軸用サーボモータ60を駆動するための速度指令を演算し、演算した速度指令に基づいてY軸用サーボモータ60の駆動を開始する(S4)。
【0025】
以上のように制御を行うと、図6に示すように、X軸が通過点P1Xに達したときにY軸の駆動が開始され、次に、Y軸が通過点P2Yに達したときにX軸の駆動が開始され、さらにX軸が通過点P3Xに達したときにY軸の駆動が開始されるというように、交互に軸が駆動される。このように、1の軸が通過点に達したときに他の軸の駆動を開始すると、図7の動作軌跡にも現れているように、マニピュレータ20の動作軌跡は減速の少ない滑らかなものとなり、一方の軸が減速されるのを待って駆動を開始する従来のものに比較して位置決めのサイクルタイムを短くできる。
【0026】
「実施の形態2」
図4は、本発明の実施の形態2にかかる手順を示すフローチャートである。本実施の形態では、位置決めのサイクルタイムをさらに短くするために、1の軸が通過点に達する前に他の軸の駆動を開始するものである。このフローチャートはコントローラ10によって処理されるものであり、請求項2に記載した発明に対応するものである。
【0027】
まず、コントローラ10は、あらかじめ教示されているマニピュレータ20の作業軌跡に関するデータの中から、次の通過点と目標位置とを取り出して、これらの座標をX軸用サーボアンプ30とY軸用サーボアンプ40に送信する(S11)。たとえば、図8に示すように、教示されている通過点P1の座標が(P1X、P1Y)であり、目標位置P2の座標が(P2X、P2Y)であるとすれば、X軸用サーボアンプ30にはX座標の通過点であるP1XとX座標の目標位置であるP2Xが、また、Y軸用サーボアンプ40にはY座標の通過点であるP1YとY座標の目標位置であるP2Yがそれぞれ送信される。
【0028】
X軸用サーボアンプ30とY軸用サーボアンプ40は、送信された目標位置の座標に基づいて、X軸用サーボモータ50(1のサーボモータ)とY軸用サーボモータ60(他のサーボモータ)を独自に駆動するため図9に示すような速度指令を演算する。X軸用サーボモータ50とY軸用サーボモータ60は、それぞれの速度指令に基づいて個々にマニピュレータ20を駆動する(S12)。
【0029】
図8に示すように、X軸用サーボモータ50とY軸用サーボモータ60は同時に動作を開始する。図9に示すように、最初に移動量の小さいY軸が通過点P1Yに到達するので、Y軸用サーボアンプ40はY軸用サーボモータ60の駆動を止める。Y軸が通過点(P1Y)に到達すると、Y軸用サーボアンプ40はコントローラ10にY軸が通過点に達したことを通知する。コントローラ10は、Y軸が通過点に到着してから一定時間tが経過すると、Y軸用サーボアンプ40に、次の通過点P2Yと次の目標位置P3Yを送信する。Y軸用サーボアンプ40は図8に示すようにY軸用サーボモータ60を駆動するための速度指令を演算し、演算した速度指令に基づいてY軸用サーボモータ60の駆動を開始する。通過点に到着してから駆動が開始されるまでの時間tを短く設定しておけば、Y軸の駆動が開始されるのは、結果的に、X軸が通過点P1Xに達する前となる(S13)。
【0030】
以上のように制御を行うと、図8に示すように、Y軸が通過点P2Yに達してから時間t経過後にはX軸の駆動の如何にかかわらずにY軸の駆動が開始される。一方、X軸が通過点P1Xを通過し目標位置P2Xに達してから時間t経過後にはY軸の駆動の如何にかかわらずにX軸の駆動が開始される。このように、X軸とY軸とを個別に駆動させると、図9の動作軌跡にも現れているように、マニピュレータ20の動作軌跡はさらに減速の少ない滑らかなものとなり、実施の形態1と比較してもなお位置決めのサイクルタイムを短くできる。
【0031】
なお、本実施の形態では、通過点に到達してから駆動を再開するまでのタイミングを時間tによって図っているが、この時間tは目標位置までの距離に応じて変化させても良いし、固定させておいてもよい。また、軸ごとに別々の時間としても良い。
【0032】
実施の形態2の場合、設定する時間tを0に近づければ近づけるほど位置決めのサイクルタイムは減少する。ところが、この時間tを短くしすぎると、マニピュレータに非常停止がかけられたときにX軸とY軸とで再生ポイントのアンマッチが生じてしまう。例えば、図10および図12に示すように、マニピュレータの非常停止点がX軸の次の通過点であるP1Xの手前で、かつ、Y軸の通過点P1Yを通過した直後であった場合には、マニピュレータとして現在どの位置にいるのかが判断できなくなるため、マニピュレータの再生ポイントの進捗管理に不都合が生ずる。
【0033】
第3の実施の形態は、時間tを短くしたことによって生じるこの問題を解決するものである。
【0034】
「実施の形態3」
図5は、本発明の実施の形態3にかかる手順を示すフローチャートである。このフローチャートはコントローラ10によって処理されるものであり、請求項3に記載した発明に対応するものである。
【0035】
まず、コントローラ10は、あらかじめ教示されているマニピュレータ20の作業軌跡に関するデータの中から、次の通過点と目標位置とを取り出して、これらの座標をX軸用サーボアンプ30とY軸用サーボアンプ40に送信する(S21)。たとえば、図11に示すように、教示されている通過点P1の座標が(P1X、P1Y)であり、目標位置P2の座標が(P2X、P2Y)であるとすれば、X軸用サーボアンプ30にはX座標の通過点であるP1XとX座標の目標位置であるP2Xが、また、Y軸用サーボアンプ40にはY座標の通過点であるP1YとY座標の目標位置であるP2Yがそれぞれ送信される。
【0036】
X軸用サーボアンプ30とY軸用サーボアンプ40は、送信された目標位置の座標に基づいて、X軸用サーボモータ50(1のサーボモータ)とY軸用サーボモータ60(他のサーボモータ)を独自に駆動するため図11に示すような速度指令を演算する。X軸用サーボモータ50とY軸用サーボモータ60は、それぞれの速度指令に基づいて個々にマニピュレータ20を駆動する(S22)。
【0037】
X軸用サーボアンプ30は、非常停止の制御情報が発生したか否かを判断する(S23)。非常停止の制御情報が発生していなければ(S23:YES)、実施の形態2のステップS13と同様に、X軸用サーボモータ50の動作後、通過点P1Xに達するまでの間にY軸用サーボモータ60の駆動を開始する(S24)。一方、非常停止の制御情報が発生していれば(S23:NO)、X軸用サーボアンプ30はコントローラ10に非常停止の制御情報を出力する。非常停止の原因が取り除かれて動作が復帰すると、コントローラ10は、この制御情報に基づいてX軸用サーボアンプ30に指令を出し、X軸用サーボアンプ30は、図11に示すようにX軸用サーボモータ50を駆動して非常停止点から駆動開始点(通過点P1X)までマニピュレータを移動させる(S25)。通過点P1Xまでマニピュレータが移動すると、X軸用サーボアンプ30はコントローラ10に通過点到達の制御情報を出力する。コントローラ10は、この制御情報に基づいてX軸用サーボアンプ30とY軸用サーボアンプ40に指令を出し、X軸用サーボモータ50とY軸用サーボモータ60の駆動を開始する。このように、駆動開始点は、X軸の通過点P1Xを超えかつY軸の通過点P1Yを超えた点となる。(S26)。
【0038】
このように、非常停止がかかったとき、遅いほうのX軸の停止位置が通過点P1を超えるタイミングでY軸を駆動すると、非常停止がかかっても、両者の停止位置が再生ポイント上でアンマッチとならず、マニピュレータの再生ポイントの進捗管理に不都合は生じなくなる。
【0039】
以上の実施の形態1〜3では、2軸のロボットマニピュレータの動作について述べたが、本発明は、図1にも示したような3軸のロボットマニピュレータまたは4軸以上のロボットマニピュレータに対しても適用可能である。
【図面の簡単な説明】
【図1】本発明にかかるサーボモータの制御方法が実施されるFAネットワーク対応型サーボシステムの概略構成図である。
【図2】2軸のロボットマニピュレータの概略構成図である。
【図3】本発明にかかるサーボモータの制御方法の実施の形態1の手順を示すフローチャートである。
【図4】本発明にかかるサーボモータの制御方法の実施の形態2の手順を示すフローチャートである。
【図5】本発明にかかるサーボモータの制御方法の実施の形態3の手順を示すフローチャートである。
【図6】実施の形態1の手順の説明に供する速度指令曲線である。
【図7】図6の速度指令曲線に基づいて駆動されたマニピュレータの軌跡曲線である。
【図8】実施の形態2の手順の説明に供する速度指令曲線である。
【図9】図8の速度指令曲線に基づいて駆動されたマニピュレータの軌跡曲線である。
【図10】実施の形態3手順の説明に供する速度指令曲線である。
【図11】実施の形態3手順の説明に供する速度指令曲線である。
【図12】図10の速度指令曲線に基づいて駆動されたマニピュレータの軌跡曲線である。
【符号の説明】
10…コントローラ、
20…マニピュレータ、
30…X軸用サーボアンプ、
40…Y軸用サーボアンプ、
50…X軸用サーボモータ、
60…Y軸用サーボモータ。
Claims (4)
- マニピュレータの各軸に取り付けられたサーボモータを制御するためのサーボモータの制御方法であって、
各サーボモータの動作を制御するサーボアンプに当該マニピュレータの通過点と目標位置を送信する段階と、
当該通過点と目標位置に基づいて1のサーボモータの動作を制御する段階と、
当該1のサーボモータによって駆動される軸が前記通過点に達したことを検出する段階と、
前記通過点に達したことが検出されたときに他のサーボモータの駆動を開始する段階と、
を含むことを特徴とするサーボモータの制御方法。 - マニピュレータの各軸に取り付けられたサーボモータを制御するためのサーボモータの制御方法であって、
各サーボモータの動作を制御するサーボアンプに当該マニピュレータの通過点と目標位置を送信する段階と、
当該通過点と目標位置に基づいて1のサーボモータの動作を制御する段階と、
当該1のサーボモータが動作した後、前記1のサーボモータによって駆動される軸が前記通過点に達するまでの間に他のサーボモータの駆動を開始する段階と、
を含むことを特徴とするサーボモータの制御方法。 - 前記1のサーボモータが動作した後に当該1のサーボモータが非常停止した場合には、前記他のサーボモータは前記1のサーボモータによって駆動される軸が前記目標位置に到達した後に駆動を開始する段階をさらに有することを特徴とする請求項2に記載のサーボモータの制御方法。
- 前記通過点は、次の目標位置に達するまでに最も時間を要する軸に対して設定されることを特徴とする請求項1または2記載のサーボモータの制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003099567A JP2004306158A (ja) | 2003-04-02 | 2003-04-02 | サーボモータの制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003099567A JP2004306158A (ja) | 2003-04-02 | 2003-04-02 | サーボモータの制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004306158A true JP2004306158A (ja) | 2004-11-04 |
Family
ID=33463974
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003099567A Pending JP2004306158A (ja) | 2003-04-02 | 2003-04-02 | サーボモータの制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004306158A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012192485A (ja) * | 2011-03-16 | 2012-10-11 | Denso Wave Inc | ロボットの制御方法およびロボットの制御装置 |
JP2012192484A (ja) * | 2011-03-16 | 2012-10-11 | Denso Wave Inc | ロボットの制御方法およびロボットの制御装置 |
-
2003
- 2003-04-02 JP JP2003099567A patent/JP2004306158A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012192485A (ja) * | 2011-03-16 | 2012-10-11 | Denso Wave Inc | ロボットの制御方法およびロボットの制御装置 |
JP2012192484A (ja) * | 2011-03-16 | 2012-10-11 | Denso Wave Inc | ロボットの制御方法およびロボットの制御装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4544145B2 (ja) | ロボットの干渉回避方法およびロボット | |
JP6392825B2 (ja) | 学習制御機能を備えたロボット制御装置 | |
WO1995025991A1 (fr) | Controleur de machine | |
JPS61157909A (ja) | ロボツトの経路誤差補正方式 | |
JP2020170356A (ja) | 加工制御システム及び加工システム | |
JPH1133960A (ja) | ロボット制御方法 | |
JP4362095B2 (ja) | 数値制御装置 | |
WO1990011166A1 (fr) | Procede d'intervention manuelle pour un robot industriel | |
JP2019202406A (ja) | ロボットハンド、ロボットハンドの制御方法、ロボット装置、プログラム及び記録媒体 | |
JPH1027013A (ja) | 数値制御装置による重畳制御方法 | |
JP2004306158A (ja) | サーボモータの制御方法 | |
US8224478B2 (en) | Numerical controller | |
CN109693013B (zh) | 控制工件移动装置和机器人协调动作的控制装置及其方法 | |
JP3961323B2 (ja) | ロボットの制御方法、制御ユニット及び制御装置 | |
JP2014079827A (ja) | 産業用ロボット制御装置 | |
JP4255783B2 (ja) | ロボット制御装置 | |
KR20110059713A (ko) | 장치, 특히 다이본더의 배치 도구의 이동을 제어하기 위한 방법 | |
CN111699078A (zh) | 机器人的运行 | |
JPH0792702B2 (ja) | 制御装置 | |
JPH10105247A (ja) | サーボモータのオーバーシュート防止方法 | |
JP2006272529A (ja) | 産業用ロボット制御装置 | |
US20230027260A1 (en) | Robot controller and emergency stop method of robot | |
KR20130013096A (ko) | 산업용 로봇의 서보 제어 방법 | |
JP2008253132A (ja) | サーボモータおよび多関節ロボットの異常負荷検出制御方法 | |
JPH0424809A (ja) | ロボット制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Effective date: 20060224 Free format text: JAPANESE INTERMEDIATE CODE: A621 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070914 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070925 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071116 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080318 |