JP6844158B2 - 制御装置および制御プログラム - Google Patents

制御装置および制御プログラム Download PDF

Info

Publication number
JP6844158B2
JP6844158B2 JP2016176673A JP2016176673A JP6844158B2 JP 6844158 B2 JP6844158 B2 JP 6844158B2 JP 2016176673 A JP2016176673 A JP 2016176673A JP 2016176673 A JP2016176673 A JP 2016176673A JP 6844158 B2 JP6844158 B2 JP 6844158B2
Authority
JP
Japan
Prior art keywords
control
moving member
speed
command value
value
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.)
Active
Application number
JP2016176673A
Other languages
English (en)
Other versions
JP2018041391A (ja
Inventor
達也 古賀
達也 古賀
克美 前場
克美 前場
庸弘 原田
庸弘 原田
清 船岩
清 船岩
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.)
Omron Corp
Original Assignee
Omron Corp
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 Omron Corp filed Critical Omron Corp
Priority to JP2016176673A priority Critical patent/JP6844158B2/ja
Priority to CN201710092433.8A priority patent/CN107807553B/zh
Publication of JP2018041391A publication Critical patent/JP2018041391A/ja
Application granted granted Critical
Publication of JP6844158B2 publication Critical patent/JP6844158B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Position Or Direction (AREA)
  • Die Bonding (AREA)
  • Feedback Control In General (AREA)

Description

本技術は、アクチュエータを制御する制御装置および制御プログラムに関する。
従来より、荷重を与えるアクチュエータに関する制御装置および制御方法が提案されている。このような荷重を与えるアクチュエータの一応用例として、部品を基板上に配置するような処理を行うボンディング装置などがある。このようなボンディング装置においては、部品を基板上に配置する際に、部品または基板を破損しないように、低荷重で部品を押し当てたいといったニーズがある。
このようなボンディング動作においては、高速かつ高精度な位置制御が要求されるため、一般的には、ボールねじを用いた移動機構が採用される。このようなボールねじを用いた移動機構では、ボールねじの回転によって生じる摩擦が相対的に大きいので、その摩擦の大きさに比較して小さな範囲の調整が難しい。つまり、ボールねじの駆動に必要なトルクに比較して、より小さい制御範囲でトルクを調整することは精度上の制約があり、低荷重での押し当て制御を実現することは容易ではない。
そこで、低荷重での押し当て制御を実現するために、以下のような先行技術が提案されている。
特開2011−096840号公報(特許文献1)は、非常に薄い半導体チップなどの電子部品を割れが生じることのない低荷重で実装することができるようにした電子部品の実装装置などを開示する。また、特開2013−157529号公報(特許文献2)は、軽荷重から高荷重まで接着荷重が得られる、または高速に実装できるダイボンダなどを開示する。
特開2011−096840号公報 特開2013−157529号公報
しかしながら、上述の先行技術では、以下のような課題が存在する。特開2011−096840号公報(特許文献1)においては、流体など圧力を用いる構成が提案されている。押し当て時のみを考慮すればこのような構成で十分であるが、移動量が大きな装置構成を考えた場合、高速かつ高精度な位置制御を実現するには不十分である。
また、特開2013−157529号公報(特許文献2)に開示される構成においては、2軸が必要であり、かつ、アクチュエータとしてリニアモータを要求しているので、装置の大型化および高コスト化という課題が生じ得る。また、軽荷重動作用として、軸にばねが取り付けられる構成が採用されており、この構成では、ばねの経時変化により制御の安定性が維持できなくなるという課題も生じ得る。
一般的な装置構成を採用しつつ、低荷重での押し当て制御を高速かつ高精度に実現できる構成が要望されている。
本発明のある実施の形態によれば、対象物と移動部材との間の相対距離を変化させるとともに、移動部材から対象物へ与える荷重の大きさを制御する制御装置が提供される。制御装置は、予め定められた速度または位置についてのパターンに従って移動部材についての指令値を順次算出する第1制御手段と、予め定められた第1条件が成立すると、第1制御手段による指令値の算出に代わって、インピーダンス制御に対応する制御演算式に従って移動部材についての指令値を順次算出する第2制御手段とを含む。
好ましくは、インピーダンス制御に対応する制御演算式は、指令値の次元についての目標値と実績値との差分に比例する項を含む。
好ましくは、インピーダンス制御に対応する制御演算式は、指令値を積分した次元についての目標値と実績値との差分に比例する項をさらに含む。
好ましくは、第1制御手段は、速度についてのパターンに従って移動部材についての速度指令値を順次算出し、第2制御手段は、制御演算式に従って、速度実績値を用いて今回の速度指令値を算出する。
好ましくは、第2制御手段は、第1パラメータセットを設定したインピーダンス制御に従って、移動部材が対象物に接触する時点を含む第1期間を制御し、続いて、第1パラメータセットとは異なる第2パラメータセットを設定したインピーダンス制御に従って、第1期間に引き続く第2期間を制御する。
好ましくは、移動部材が対象物に接触する前に、移動部材についての速度指令値を算出するための目標値が予め取得された補正量だけ減じられる。
好ましくは、第2制御手段は、インピーダンス制御に対応する制御演算式に従って移動部材についての指令値が順次算出される過程において、予め定められた第2条件が成立すると、速度指令値を算出するための目標値を補正量だけ減じる。
好ましくは、第2条件は、第2制御手段によるインピーダンス制御の開始から予め定められた時間が経過したことを含む。
好ましくは、第2条件は、移動部材が対象物に接触した直後に発生する荷重のピークと、移動部材が対象物に接触して荷重を与える一連の処理に要する時間の長さとを考慮して決定される。
本発明のある実施の形態によれば、対象物と移動部材との間の相対距離を変化させるとともに、移動部材から対象物へ与える荷重の大きさを制御する制御プログラムが提供される。制御プログラムはコンピュータに、予め定められた速度または位置についてのパターンに従って移動部材についての指令値を順次算出する第1制御ステップと、予め定められた第1条件が成立すると、第1制御ステップによる指令値の算出に代わって、インピーダンス制御に対応する制御演算式に従って移動部材についての指令値を順次算出する第2制御ステップとを実行させる。
本発明の実施の形態によれば、一般的な装置構成を採用しつつ、低荷重での押し当て制御を高速かつ高精度に実現できる。
本実施の形態に係る制御方法に用いられるアクチュエータの一例を示す模式図である。 押し当て制御において発生する衝突速度に応じた力の変化を説明するための模式図である。 図2に示す摩擦力の変化を説明するための図である。 本実施の形態に係る制御方法に用いられるインピーダンス制御に用いられる時間領域での演算式の一例を示す図である。 本実施の形態に係る制御装置を含む制御システムの構成を概略する模式図である。 図5に示す制御装置の演算処理ユニットの構成を概略する模式図である。 本実施の形態に係る制御方法を実現するための制御ループの一例を概略する模式図である。 本実施の形態に係る制御方法の第1制御ロジックを説明するための模式図である。 本実施の形態に係る制御方法の第1制御ロジックに係るフローチャートである。 本実施の形態に係る制御方法の第1制御ロジックに従う制御結果の一例を示すタイムチャートである。 本実施の形態に係る制御方法の第2制御ロジックを説明するための模式図である。 移動部材と対象物との接触によって荷重のピークが発生する現象を説明するための図である。 本実施の形態に係る制御方法の第3の制御ロジックの概要を説明するための模式図である。 本実施の形態に係る制御方法の第3の制御ロジックに係るフローチャートである。 本実施の形態に係る制御方法の第3の制御ロジックに従う制御結果の一例を示すタイムチャートである。 本実施の形態に係る制御方法の実行をユーザプログラム上で定義するためのファンクションブロックの一例を示す図である。 本実施の形態に係る制御方法に含まれるインピーダンス制御をユーザプログラム上で定義するためのファンクションブロックの一例を示す図である。 本実施の形態に係る制御方法に用いられるアクチュエータの別の一例を示す模式図である。
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
<A.アクチュエータの構成および課題>
まず、本実施の形態に係るアクチュエータの構成および課題について説明する。本実施の形態に係る制御方法は、対象物と移動部材との間の相対距離を変化させるとともに、移動部材から対象物へ与える荷重の大きさを制御する。このようなアクチュエータの一例として、以下では、ボールねじを有する移動機構を一例として説明する。
(a1:アクチュエータの構成例)
図1は、本実施の形態に係る制御方法に用いられるアクチュエータの一例を示す模式図である。図1を参照して、アクチュエータ2は、ハウジング4の中心部に上部を貫通するように配置されたボールねじ6を含む。このボールねじ6には、移動部材であるナット8が係合されている。ナット8はハウジング4の内部に回転を抑止された状態で配置されている。ボールねじ6の一端にはモータ10が結合されており、モータ10が回転することで、ボールねじ6とナット8とが相対回転し、その結果、ナット8がボールねじ6の軸方向に沿って移動することになる。このような機構によって、移動部材であるナット8の位置を制御することができる。
例えば、移動部材であるナット8の移動方向に対象物が配置される。すなわち、ボールねじ6の回転によってボールねじ6の位置が変化することで、対象物と移動部材との間の相対距離が変化する。そして、ナット8またはナット8と機械的に連結された図示しない部材が対象物に接触することで、対象物に対して荷重が与えられる。本実施の形態に係る制御方法においては、この移動部材(ナット8)が対象物にアプローチして接触し、接触後に移動部材が対象物に与える荷重の大きさを制御する。
図1に示すようなアクチュエータは、例えば、何らかの基板上に部品を配置するような用途に用いられてもよい。
(a2:低荷重での押し当て制御の難しさ)
次に、図1に示すようなアクチュエータ2を用いた場合の低荷重での押し当て制御の難しさについて説明する。押し当て制御とは、一般的には、アクチュエータ2の移動部材と対象物との間の相対距離についての制御、および、アクチュエータ2の移動部材が対象物に対して与える荷重の大きさの制御を包含する。
以下の説明において、「押し当て」との用語のみで用いる場合には、移動部材が対象物に対して荷重を与えることを意図する場合もある。また、「低荷重」との用語は、アクチュエータ2を駆動するのに必要な荷重(典型的には、トルク)の大きさに比較して、アクチュエータ2の移動部材が対象物に対して与える荷重が相対的に小さい場合を包含する概念である。但し、「低荷重」との用語は限定的に解釈されるべきではなく、後述するような、荷重の大きさの制御が難しい範囲を概括するような用語として解釈されるべきである。
例えば、高荷重の押し当て制御として、アクチュエータ2を構成するボールねじを駆動するために必要なトルクを30Nmとし、押し当てのためのトルクを10Nmとする場合を考える。この場合、押し当てのためにトータルで40Nmのトルクでかければ、押し当てができる。このとき、押し当てのためのトルクは、トータルのトルクの1/4であるので、トータルのトルクに生じる誤差の影響は実質的に無視できる。
これに対して、低荷重の押し当て制御として、アクチュエータ2を構成するボールねじを駆動するために必要なトルクを30Nmとし、押し当てのためのトルクを1Nmとする場合を考える。この場合、論理的には、押し当てのためにトータルで31Nmのトルクでかければ、押し当てができる。しかしながら現実には、位置、ノイズ、経時変化などの影響を受けて摩擦の大きさに微小の変化が生じ、実際にボールねじを駆動するためのトルクは27〜33Nm程度の範囲で変化する。このようなトータルのトルクの誤差によって、低荷重の押し当てとして要求されるトルクの1Nmは埋もれてしまう。
(a3:衝突速度による荷重への影響)
次に、移動部材と対象物との衝突速度に応じて発生する荷重への影響について説明する。対象物または移動部材の大きさの誤差などによって、移動部材と対象物との間の距離が本来の値より接近して、押し当て制御にオーバーシュートが発生すると、発生する摩擦の向きが変化するので、押し当て制御を適切に行えない場合がある。
図2は、押し当て制御において発生する衝突速度に応じた力の変化を説明するための模式図である。図3は、図2に示す摩擦力の変化を説明するための図である。図2および図3を参照して、衝突速度に応じて押し当て力(荷重)が変化する理由について説明する。
図2(A)〜(C)に示す各例においては、出力されるトルクが定格値に対して20%に相当する値で維持されているとし、このときアクチュエータ2が発生する力は20Nであるとする。また、静止中の摩擦力(静止摩擦力)は、状況に応じて、ある程度の幅で変動することになる。
図2(A)には、対象物に対して移動部材が低速で衝突する場合を示す。図2(A)を参照して、アクチュエータ2が発生する力は、移動部材が対象物に衝突したときに発生する対象物からの反発力(すなわち、押し当て力(荷重))と、ボールねじの回転駆動によって生じる摩擦との合計に相当する。例えば、対象物に対してする移動部材の衝突速度が低く、対象物に対する押し当て力が10N発生したとすると、アクチュエータ2が発生する力が20Nで一定であるので、10Nに相当する摩擦力が発生する。
図2(B)には、対象物に対して移動部材が高速で衝突する場合を示す。図2(B)を参照して、対象物に対してする移動部材の衝突速度が高く、衝突の瞬間には、対象物に対する押し当て力が50N発生したとすると、負側に最大の大きさの摩擦力(図2(B)に示す例では、−10N)が発生するが、アクチュエータ2が発生する力(20N)と釣り合いをとることができず、移動部材は押し戻されて、衝突前とは反対方向に移動することにある。
その結果、衝突後に移動部材が押し戻されている間、対象物に対する押し当て力が30Nまで減少して、負側に最大の大きさの摩擦力(図2(B)に示す例では、−10N)で釣り合いが取れたとする。
図2(C)には、対象物に対して移動部材が中速で衝突する場合を示す。図2(C)を参照して、対象物に対する押し当て力が25N発生したとすると、アクチュエータ2が発生する力は20Nで一定であるので、負側に5Nに相当する摩擦力が発生する。
図2(A)〜(C)に示すように、移動部材と対象物との衝突速度に応じて発生する衝撃力の大きさに応じて、アクチュエータ2に生じ得る摩擦力の大きさは任意かつ非線形(静止摩擦と動摩擦との間)に変化することになる。例えば、図3に示すアクチュエータ2に発生する摩擦力の大きさを示すモデルにおいては、静止摩擦は−10N〜10Nの範囲で任意の値をとることができ、この範囲を超えると、その超えた方向に移動部材(ナット8)が移動することになる。
<B.概要>
上述したように、低荷重での押し当て制御の難しさがあり、かつ、高速かつ高精度な位置制御が要求される。このような要求に対して、本実施の形態に係る制御方法では、速度指令型インピーダンス制御または位置指令型インピーダンス制御を採用する。
本明細書における「インピーダンス制御」は、制御対象が有する機械的なインピーダンス(減衰特性、剛性、慣性)に応じて、対応する位置や速度を調整する制御方法を包含する。具体的には、減衰特性に対応する「ダンパ項」、剛性に対応する「ばね項」、慣性に対応する「マス項」をファクタとして含む制御演算式が採用される。但し、これらの項のすべてを含む制御演算式を採用する必要はなく、少なくとも、「マス項」および「ダンパ項」を含むようなものであればよい。
図4は、本実施の形態に係る制御方法に用いられるインピーダンス制御に用いられる時間領域での演算式の一例を示す図である。図4(A)〜(C)において、xは時刻nにおける位置を表す変数であり、変数上部のドット(・)は時間微分を示す。変数上部に2つのドット(・・)があるものは時間の2階微分を示す。
図4(A)〜(C)には、時刻nにおける速度指令値を順次算出する場合(速度指令型)の制御演算式を示す。すなわち、時刻nにおける速度指令値は、前回(時刻n−1)における速度指令値に対して、各時刻における加速度の時間積分を加えたものとして算出される。加速度は、図4(A)〜(C)の第3式に示されるように、マス項、ダンパ項、ばね項、マス項(荷重)、の少なくとも一部を含む。なお、時刻nにおける位置指令値を順次算出する場合(位置指令型)を採用する場合には、図4(A)〜(C)に示す制御演算式をさらに時間で積分すればよい。速度指令値から位置指令値の算出については、公知の技術であるので、ここではその詳細な説明は行わない。
図4(A)〜(C)の式中の各変数は、以下を意味する。
(・):速度指令値
n−1(・):速度実績値
(・):速度目標値(今回の目標値)
:マス係数
:ダンパ係数
:ばね係数
:位置目標値(今回の目標値)
n−1:位置実績値
:荷重目標値
ext:荷重実績値
Δt:演算周期(サンプリング時間)
図4(A)に示す制御演算式においては、マス項としてマス係数mの逆数が用いられ、マス係数mの逆数は、ダンパ項、ばね項、マス項(荷重)の全体に対して乗じられる。マス係数mは、移動部材の質量に関連付けられる係数である。
ダンパ項として、今回の速度目標値と前回(時刻n−1)の速度実績値との差分に対して、ダンパ係数Cを乗じた値が採用される。このように、インピーダンス制御に対応する制御演算式は、指令値の次元(図4に示す例では、速度)についての目標値と実績値との差分に比例する項を含む。
ばね項として、今回の位置目標値と前回(時刻n−1)の位置実績値との差分に対して、ばね係数Kを乗じた値が採用される。指令値を積分した次元(図4に示す例では、位置)についての目標値と実績値との差分に比例する項を含む。
マス項(荷重)として、アクチュエータが発生すべき荷重目標値と実際に発生した荷重実績値との差に−1を乗じた値が採用される。荷重実績値Fextの取得には、典型的には、後述のロードセル16での計測値が用いられる。
図4(B)に示す制御演算式は、図4(A)において、マス項(荷重)を除外したものに相当し、アクチュエータから対象物に与える荷重などをフィードバックできない場合などには、この簡略された制御演算式を採用してもよい。
図4(C)に示す制御演算式は、図4(B)において、ばね項を除外したものに相当し、アクチュエータまたは移動部材の剛性に起因する外乱などを無視できる場合には、この制御演算式を採用してもよい。
図4(A)〜(C)に示す制御演算式において、マス係数m、ダンパ係数C、ばね係数K、各項におけるアクチュエータ固有の値などが制御系に応じて、予め設定される。
本実施の形態に係る制御方法においては、上述したようなインピーダンス制御を採用する。このようなインピーダンス制御の採用によって、リニアモータではなく、サーボモータでボールねじを駆動するようなアクチュエータであっても、押し当て制御を高速かつ高精度に行うことができ。そのため、上述の特許文献2に開示される構成とは異なり、装置の大型化および高コスト化を避けつつ、また、経時変化により制御の安定性を低下させるばねなどの要素も必要としない構成を実現できる。
<C.制御システムの構成>
次に、本実施の形態に係る制御方法を実現するための制御装置を含む制御システムの構成について説明する。図5は、本実施の形態に係る制御装置を含む制御システム1の構成を概略する模式図である。
図5を参照して、制御システム1は、アクチュエータ2に対する制御を主として担当する制御装置100を含む。制御装置100は、任意のコンピュータまたはハードウェアロジックなどを用いて実装すればよいが、以下の説明においては、典型的として、産業用コンピュータの一例であるPLC(プログラマブルコントローラ)を用いる場合について説明する。
制御装置100は、演算処理ユニット102と、1または複数の機能ユニット104−1,104−2,104−3,104−4,…(以下、「機能ユニット104」とも総称する。)とを含む。
図6は、図5に示す制御装置100の演算処理ユニット102の構成を概略する模式図である。図6を参照して、演算処理ユニット102においては、プロセッサ110がシステムプログラム122およびユーザプログラム116を実行することで、本実施の形態に係る制御方法を含む各種処理が提供される。
具体的には、演算処理ユニット102は、主たるコンポーネントとして、プロセッサ110と、主メモリ112と、二次記憶装置114と、バスマスタ回路124と、ローカルインターフェイス回路126と、ネットワークマスタ回路128とを含む。
プロセッサ110は、各種プログラムに記述された命令を順に実行する演算部であり、典型的には、CPU(Central Processing Unit)やGPU(Graphical Processing Unit)などで構成される。プロセッサ110としては、マルチコアの構成、マルチプロセッサの構成、両者を併せた構成のいずれを採用してもよい。
主メモリ112は、プロセッサ110がプログラムを実行する際のワーク領域を提供する記憶装置である。主メモリ112としては、DRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)といった揮発性のメモリが用いられる。
二次記憶装置114は、プロセッサ110で実行される各種プログラムや各種コンフィギュレーションを格納する。二次記憶装置114としては、HDD(Hard Disk Drive)やSSD(Solid State Drive)などの不揮発性のメモリが用いられる。より具体的には、二次記憶装置114には、システムプログラム122およびユーザプログラム116が格納される。システムプログラム122は、一種のオペレーティングシステムに相当するプログラムであり、演算処理ユニット102が提供する基本的なシステム上の機能、あるいは、ユーザプログラム116を実行させるための環境を提供する。ユーザプログラム116は、制御装置100の制御対象に応じて任意に作成される一種の制御プログラムであり、典型的には、論理的な演算を主とするシーケンスプログラム118と、位置制御や速度制御などの数値的な演算を主とするモーションプログラム120とを含む。本実施の形態に係る制御方法は、モーションプログラム120の一部として実装されてもよい。
バスマスタ回路124は、機能ユニット104(図5参照)との間でデータを遣り取りする内部バス上のデータ伝送を管理する。
ローカルインターフェイス回路126は、サポート装置や他の外部装置との間でデータを遣り取りするインターフェイスであり、例えば、USB(Universal Serial Bus)などの伝送規格が採用される。
ネットワークマスタ回路128は、制御装置100とは離れた位置に配置される機能ユニットや他の制御装置との間でデータを遣り取りするフィールドネットワーク上のデータ伝送を管理する。このようなフィールドネットワークとしては、EtherCAT(登録商標)、EtherNet/IP(登録商標)、DeviceNet(登録商標)、CompoNet(登録商標)などの定周期ネットワークが用いられる。
再度図5を参照して、演算処理ユニット102に接続される機能ユニット104は、制御装置100による制御対象に対する任意の制御を実現するための各種機能を提供する。典型的には、機能ユニット104の各々は、制御対象である機械や設備などからフィールド情報を収集する機能(データ収集機能)、および/または、制御対象の機械や設備などに対する指令信号を出力する機能(データ出力機能)などを有する。
図5に示す構成においては、機能ユニット104−4がサーボ制御ユニットとして機能し、演算処理ユニット102でのプログラム(主として、図6に示すモーションプログラム120)を実行することで所定周期ごとに算出される指令値(典型的には、速度指令値または位置指令値)をサーボドライバ14に与える。
サーボドライバ14は、制御装置100からの指令値に従ってモータ10(図5に示す例では、サーボモータ)を駆動する。典型的には、サーボドライバ14は、制御装置100からの指令値に応じた数のパルスをモータ10へ出力し、モータ10は受信したパルス数に応じて回転位置を変化させる。このような構成を採用することで、モータ10へ与えるパルス数を適宜調整することで、モータ10の回転位置、回転角速度、回転角加速度などを制御することができる。
図5に示す構成においては、モータ10の回転挙動をフィードバックするためのカウンタ12が配置されており、サーボドライバ14は、カウンタ12からの検出値に基づいて、モータ10へ与える電気信号を調整する。つまり、サーボドライバ14は、速度または位置の実績値に基づくフィードバックループを有している。
また、押し当て制御により対象物に生じる荷重を測定するためのロードセル16が設けられてもよい。ロードセル16の検出値は、入力ユニットである機能ユニット104−3に与えられる。なお、ロードセル16は、いわば検証用でありオプションである。また、現実にロードセル16を配置する代わりに、オブザーバなどを用いて対象物に発生し得る荷重などを推定するようにしてもよい。
<D.制御ループ>
次に、本実施の形態に係る制御方法を実現するための制御ループの一例について説明する。図7は、本実施の形態に係る制御方法を実現するための制御ループの一例を概略する模式図である。図7には、上述の図4(B)に示す制御演算式に相当する制御ループを示す。
図7を参照して、本実施の形態に係る制御方法は、制御装置100内に実装される制御ループと、サーボドライバ14および周辺部位とにより実現される。具体的には、制御装置100の制御ループは、係数演算器152,156,160,162と、加減算器154,158,164と、微分器168と、スイッチ180とを含む。
後述するように、本実施の形態に係る制御方法は、インピーダンス制御およびインピーダンス制御以外の制御方法を組み合わせることで実現される。2つまたはそれ以上の制御系の出力を切り替えるためにスイッチ180が設けられる。スイッチ180が選択可能な第1ポート166にはインピーダンス制御による速度指令値が現れており、第2ポート170には速度制御による速度指令値が現れている。
微分器168は、入力される位置目標値に対して時間微分して、速度目標値を出力する。
係数演算器152には、位置目標値xが順次与えられて、その大きさがk/d倍されて出力される。加減算器154では、係数演算器152から出力される係数補正後の位置目標値xに対して、微分器168からの速度目標値が加算されるとともに、位置実績値が減算される。
係数演算器156には、加減算器154からの演算結果が順次与えられて、その大きさがc倍されて出力される。加減算器158では、係数演算器156から出力される係数補正後の加算結果に対して、速度実績値が加算される。
係数演算器160には、加減算器158からの演算結果が順次与えられて、その大きさがm −1倍されて出力される。さらに、係数演算器162には、係数演算器160からの演算結果が順次与えられて、演算周期Δtが乗じられて出力される。
最終的に、加減算器164において、係数演算器162からの演算結果と、速度実績値(前回値)とが加算されて、速度指令値として第1ポート166へ出力される。
一方、第2ポート170には、入力される位置目標値が微分器168にて時間微分して得られる速度目標値が出力される。
なお、図7に示す、係数m,k,d,cは、制御演算の便宜上導入されたものであり、図4に示す、マス係数m、ばね係数K、ダンパ係数Cに対応する。
なお、図4(A)に示すような、荷重実績値の項(マス項(荷重))を反映する場合には、ロードセル16で検出される荷重実績値を反映する演算器をさらに追加すればよい。あるいは、現実にロードセル16を配置する代わりに、オブザーバなどを用いて対象物に発生し得る荷重などを推定するようにしてもよい。
一方、スイッチ180で選択された速度指令値はサーボドライバ14に与えられ、サーボドライバ14がモータ10を駆動するための電気信号を出力する。サーボドライバ14には、カウンタ12での検出値に基づく速度実績値がフィードバックされており、与えられた速度指令値に追従するようにモータ10が駆動される。
なお、速度指令値は、インピーダンス制御に係る制御ループにフードバックされているが、サーボドライバ14でもモータ10の速度(または、位置)のフィードバックループを構成することで、アクチュエータで生じる摩擦の変動に対する補償をより高速に行うことができ、低荷重での押し当て制御をより高精度に実現できる。
なお、図7には、速度指令型の制御ループを示すが、位置指令型の制御ループについても同様に構成できる。
<E.第1制御ロジック>
本実施の形態に係る制御方法においては、上述したようなインピーダンス制御を採用することで、荷重の制御を高精度に行うことができる。インピーダンス制御は、制御対象が有する機械的な特性(すなわち、インピーダンス)を考慮して、アクチュエータ2を制御するため、荷重を高精度に調整できるが、従来の制御手法に比較して対象物に接近するのにより多くの時間を要する場合がある。
そのため、本実施の形態に係る制御方法の第1制御ロジックにおいては、インピーダンス制御以外の速度制御手法または位置制御手法に従って、移動部材を対象物に近付けた後に、インピーダンス制御に切り替える。
図8は、本実施の形態に係る制御方法の第1制御ロジックを説明するための模式図である。横軸には経過時間が定義され、縦軸には移動部材の位置および発生する荷重が定義される。
図8に示す例においては、予め定められた速度目標値、すなわち速度パターンに従ってモータ10に対して指令値が与えられる(図8に示す「速度制御」)。そして、移動部材が対象物に接近すると(図8に示す例では、時刻Aまで到達すると)、インピーダンス制御に切り替わる。
最初の速度制御においては、移動部材をなるべく短時間で対象物に接近させるために速度パターンがそのまま速度指令値として与えられる。このような速度パターンとしては、速度制御の制御中またはその後のインピーダンス制御への切り替わり時に残留振動が発生しないようなものが好ましい。例えば、目標の速度パターンの加加速度(ジャーク)が小さくなるような軌道(例えば、時間についての5次関数で定義できる)ものを採用してもよい。
なお、速度制御に代えて、予め定められた軌道、すなわち位置パターンを与える制御(位置制御)を採用してもよい。この場合には、各時間について移動部材が存在すべき位置が順次与えられて、その位置目標値に従ってモータ10が駆動される。
このような速度制御または位置制御の後、インピーダンス制御へ切り替えられると、移動部材が対象物にほぼ速度ゼロで接触するように、モータ10への速度指令値が順次算出される。移動部材が対象物に接触するタイミングにおいて、移動部材の移動速度がほぼゼロになるように、インピーダンス制御の各パラメータが調整されることになる。
移動部材が対象物に接触することで、対象物に対する荷重が発生することになる(図8の符号Z1を参照)。図8に示す例では、移動部材が対象物に接触して速度がほぼゼロに維持されることで、予め想定した一定の荷重が維持されていることが分かる。
このように、本実施の形態に係る制御方法の第1制御ロジックにおいては、予め定められた速度または位置についてのパターンに従って移動部材についての指令値(速度指令値または位置指令値)を順次算出する第1制御ループと、予め定められた切り替え条件が成立すると、第1制御手段による指令値の算出に代わって、インピーダンス制御に対応する制御演算式に従って移動部材についての指令値(速度指令値または位置指令値)を順次算出する第2制御ループとが組み合わせられる。このような制御ロジックを採用することで、インピーダンス制御の前に速度制御または位置制御が実施されて、移動部材が対象物に接近するまでの時間を短縮することができ、両者が接触する前に、インピーダンス制御に切り替えることによって、移動部材から対象物に対して与えられる荷重を一定に維持することができる。
なお、図8に示す例では、第1制御ループでは、速度についてのパターン(速度目標値)に従って移動部材についての速度指令値が順次算出され、第2制御ループでは、インピーダンス制御に係る制御演算式に従って、速度実績値を用いて今回の速度指令値が算出される。
速度制御または位置制御からインピーダンス制御への切り替え条件(図8中の時刻A)は、予め定められた速度パターンまたは位置パターンの終了、すなわち制御開始から予め定められた時間の到来に応じて行えばよい。すなわち、速度制御または位置制御とインピーダンス制御との切り替えタイミングは、時間に応じて定められる。あるいは、速度指令などに基づいて移動部材の位置を推定し、その推定した位置から算出される残距離に基づいて、切り替えタイミングを決定してもよい。
図9は、本実施の形態に係る制御方法の第1制御ロジックに係るフローチャートである。図9に示す各ステップは、典型的には、制御装置100の演算処理ユニット102のプロセッサ110がユーザプログラム116を実行することで実現される。
図9を参照して、プロセッサ110は、速度制御(または位置制御)およびインピーダンス制御に必要なパラメータの読み込みなどのセットアップを行う(ステップS100)。続いて、制御開始がトリガーされると(ステップS102においてYES)、予め定められた目標の速度パターンに従って速度指令値を算出する(ステップS104)。この算出された速度指令値はサーボドライバ14へ与えられる。
続いて、プロセッサ110は、速度制御からインピーダンス制御への切り替え条件が成立したか否かを判断する(ステップS106)。速度制御からインピーダンス制御への切り替え条件が成立していなければ(ステップS106においてNO)、ステップS104以下の処理が繰返される。
速度制御からインピーダンス制御への切り替え条件が成立していれば(ステップS106においてYES)、プロセッサ110は、インピーダンス制御に係る制御演算式に従って速度指令値を算出する(ステップS108)。この算出された速度指令値はサーボドライバ14へ与えられる。
続いて、プロセッサ110は、制御終了条件が成立したか否かを判断する(ステップS110)。速度終了条件が成立していなければ(ステップS110においてNO)、ステップS108以下の処理が繰返される。
一方、速度終了条件が成立していれば(ステップS110においてYES)、一例の制御動作は終了する。
図10は、本実施の形態に係る制御方法の第1制御ロジックに従う制御結果の一例を示すタイムチャートである。図10には、移動部材を移動速度1.1mm/sで対象物に接触させ、両者の接触後、15msで15gfの荷重を対象物に与える例を示す。図10を参照して、移動部材と対象物との接触後において、発生する荷重はほぼリニアに上昇し、過剰なオーバーシュートもなく、目的の15gfで安定していることが分かる。
以上のとおり、本実施の形態の制御ロジック1によれば、押し当て制御を高速かつ高精度に行うことができることが分かる。
<F.第2制御ロジック>
上述の第1制御ロジックにおいては、速度制御または位置制御からインピーダンス制御へ切り替える構成について例示したが、インピーダンス制御をさらに細分化してもよい。
より具体的には、インピーダンス制御の対象となる物理的な現象としては、移動部材が対象物へ接触する局面と、対象物に対して安定した荷重を与える局面とが存在する。そのため、移動部材が対象物へ接触する前から接触直後の期間と、移動部材が対象物へ接触した後の期間とのそれぞれについて、インピーダンス制御に用いるパラメータを異ならせてもよい。
図11は、本実施の形態に係る制御方法の第2制御ロジックを説明するための模式図である。横軸には経過時間が定義され、縦軸には移動部材の位置および発生する荷重が定義される。
図11に示す例においては、予め定められた速度目標値、すなわち速度パターンに従ってモータ10に対して指令値が与えられる(図11に示す「速度制御」)。そして、移動部材が対象物に接近すると(図11に示す例では、時刻Aまで到達すると)、インピーダンス制御1に切り替わる。このインピーダンス制御1においては、移動部材が対象物にほぼ速度ゼロで接触するように、パラメータが設定される。
その後、移動部材が対象物に接触して、対象物に対する荷重が増加するようになると(図11に示す例では、時刻Bまで到達すると)、インピーダンス制御1からインピーダンス制御2に切り替わる。このインピーダンス制御2においては、対象物に与えられる荷重の大きさについての変動が早期に収束して、安定した大きさの荷重が発生するようなパラメータが設定される。
具体的な実装方法としては、インピーダンス制御1および2に応じた、係数m,k,d,cのパラメータセットが予め用意されており、図7に示す制御ループにおいて、インピーダンス制御1からインピーダンス制御2への切り替え時に、そのパラメータセットが切り換えられる。
第2制御ロジックにおいては、第1パラメータセットを設定したインピーダンス制御(インピーダンス制御1)に従って、移動部材が対象物に接触する時点を含む第1期間(図11の時刻A〜B)を制御し、続いて、第1パラメータセットとは異なる第2パラメータセットを設定したインピーダンス制御に従って、第1期間に引き続く第2期間(図11の時刻B以降)を制御する。
以上のように、制御対象の状況に応じて、インピーダンス制御に用いるパラメータを異ならせることで、押し当て制御の制御精度をより高めることができる。このように、本実施の形態の第2制御ロジックによれば、上述の第1制御ロジックに比較して、押し当て制御のさらなる高速化およびさらなる高精度化を実現できる。
<G.第3の制御ロジック>
次に、移動部材と対象物との接触時に生じ得る荷重のピーク(オーバーシュート)を低減するための手法を含む制御ロジックについて説明する。
上述の押し当て制御によれば、インピーダンス制御のパラメータを最適化することで、高速化および高精度化を実現できる。但し、装置構成によっては、移動部材が対象物と折衝した直後に荷重のピーク(オーバーシュート)が生じる場合がある。例えば、移動部材の先端がゴムなどで構成される場合には、荷重のピークはそれほど高くないが、金属で構成される場合には、大きな荷重のピークが生じる可能性がある。荷重のピークが大きいと、対象物が破損する可能性もある。
図12は、移動部材と対象物との接触によって荷重のピークが発生する現象を説明するための図である。図12(A)を参照して、移動部材と対象物との接触によって荷重のピークが発生する原因は、接触時の移動部材の速度が相対的に大きいことである。すなわち、移動部材がある速度状態で対象物に接触すると荷重のピークが発生する。このような原因を考慮すると、図12(B)に示すように、移動部材と対象物との接触時の速度をほぼゼロにできれば、荷重のピークは発生ことになる。
しかしながら、現実には、移動部材と対象物との接触時の速度がほぼゼロになるようにパラメータを調整することは容易ではない。特に、本実施の形態においては、インピーダンス制御を採用するので、複数のパラメータ(図4に示すマス係数m、ダンパ係数C、ばね係数K/図7に示す係数m,k,d,c)を同時に調整する必要があり、調整作業に多くの工数を要してしまう。
また、移動部材と対象物との接触時の速度をゼロにすることで、制御全体の実行に要する時間(タクトタイム)が大幅に延びてしまうことも好ましくない。
そこで、インピーダンス制御に係るパラメータの調整工数を最適化するとともに、制御全体のタクトタイムの増加を抑制できるような手法を採用する。具体的には、あるパラメータに従うインピーダンス制御において何らかの荷重のピークが生じた場合に、その挙動の実績に基づいて、移動部材と対象物との接触時の移動速度を求め、その求めた移動速度を事前に補正する。すなわち、移動部材が対象物に接触する前に、移動部材についての速度指令値を算出するための目標値が予め取得された移動速度(補正量に相当)だけ減じられる。この事前の速度補正は、インピーダンス制御において実行されてもよいし、当該インピーダンス制御への切り替え前に実施される速度制御または位置制御において実行されてもよい。
図13は、本実施の形態に係る制御方法の第3の制御ロジックの概要を説明するための模式図である。図13(A)に示すように、あるパラメータに従うインピーダンス制御において加重のピークが発生しているとする。このような好ましくない状態の挙動を取得することで、そのときに移動部材と対象物との接触時における移動速度を取得できる。図13(A)に示す例では、接触時(加重が発生し始める時点)の移動部材の速度がXであることが分かる。
図13(B)を参照して、図13(A)で得られた知見(接触時の移動部材の速度がXであること)に基づいて、移動部材が対象物に接近する際の軌道を補正する。すなわち、インピーダンス制御中(または、それ以前の速度制御中または位置制御中)に、速度目標値を先の知見で取得された補正量Xだけ低減させる。速度目標値は、移動部材の速度指令値を算出するための基準となる値であり、この基準が予め取得された補正量Xだけ減じられる。
インピーダンス制御において事前の速度補正が実施される場合には、インピーダンス制御に従う制御ループにおいて、速度指令値を算出するための目標値が補正される。このとき、速度指令値は補正後の目標値に対して滑らかに追従するため、補正量が相対的に大きな場合であっても、移動部材に残留振動が生じにくく、移動部材が対象物に接触しときに残留振動による意図しない大きな力が発生する可能性を低減できる。
一方、速度制御または位置制御において事前の速度補正が実施される場合には、速度指令値は補正後の目標値にほぼ遅れなく追従することになる。このとき、目標値の補正を含む速度制御または位置制御に関するパラメータとインピーダンス制御に係るパラメータとの依存度合いを下げることができるので、パラメータの調整工数をより低減できる可能性がある。
また、速度目標値を補正量Xだけ低減させるタイミングである、速度切替時刻Tcは1つの調整可能なパラメータとなる。
具体的な実装形態としては、図7に示す制御ループにおいて、微分器168の出力側に減算器を配置し、微分器168から出力される速度目標値に対して補正量Xを減じるようにしてもよい。このような実装形態にすれば、速度切替時刻Tcと、インピーダンス制御とインピーダンス制御以外の制御方法(速度制御または位置制御)との切替時刻との関係に応じて、補正量Xを減じるタイミングをいずれの側にも任意に設定できる。
速度切替時刻Tcを遅めに設定すると、タクトタイムを短くするためには有利であるが、荷重のピークの抑制に対しては不利である。逆に、速度切替時刻Tcを早めに設定すると、荷重のピークの抑制に対しては有利であるが、タクトタイムを短くするためには不利である。このような荷重ピークの抑制とタクトタイムの縮小という互いに相反する両方の目的を満足できるように、速度切替時刻Tcが調整される。
但し、速度切替時刻Tcという1つのパラメータのみを調整すればよいので、パラメータ調整に係る工数が大幅に増大することはなく、合理的な工数でパラメータ調整を完了できる。
第3の制御ロジックにおいては、インピーダンス制御に対応する制御演算式に従って移動部材についての速度指令値が順次算出される過程において、予め定められた条件が成立すると(例えば、速度切替時刻Tcが到来すると)、予め取得された補正量Xだけ目標値(この例では、速度目標値)を減じる。このような構成を採用することで、補正量Xだけ目標値を減じる条件(例えば、速度切替時刻Tc)という1つのパラメータの調整で、荷重のピークの抑制およびタクトタイムの増大抑制についての調整を少ない工数で実現できる。
補正量Xだけ目標値を減じる条件の一例として、インピーダンス制御の開始から予め定められた時間(速度切替時刻Tc)が経過したことを採用してもよい。次に、補正量Xだけ目標値を減じる条件の一例である速度切替時刻Tcを決定する方法のいくつかについて説明する。
(1)荷重ピークとタクトタイムとについての評価関数を用いる方法
荷重ピークとタクトタイムとについての評価関数を用いることで、速度切替時刻Tcを最適化してもよい。例えば、以下のような評価値fを定義し、この評価値fが極小値をとる条件を探索してもよい。
評価値f=重み係数1×タクトタイムの延長分+重み係数2×荷重ピークの大きさ
このような評価値fを用いることで、荷重ピークおよびタクトタイムの両方を考慮した、速度切替時刻Tcを決定できる。
(2)タクトタイムについての評価関数を用いる方法
荷重ピークが予め定められた許容値を満足している範囲でタクトタイムの延長分を最小化する場合には、以下のような評価値fを用いてもよい。
評価値f=重み係数1×タクトタイムの延長分
但し、荷重ピーク<許容値
このような評価値fを用いることで、荷重ピークを許容値内に維持できる範囲で、タクトタイムを最も短くできる速度切替時刻Tcを決定できる。
(3)最適値の探索方法
上述したような評価値fの最適値を探索する方法としては、数学的に解を求める方法を採用してもよいが、複数の候補を予め設定し、これら複数の候補の間で最適なものを決定するようにしてもよい。
例えば、インピーダンス制御が実行される区間(例えば、図11の時刻Aから時刻Bまでの区間)をN等分して候補点を設定し、時刻Aに近い候補点より順次評価値fを算出していき、その算出された評価値fに基づいて、速度切替時刻Tcを決定すればよい。
あるいは、インピーダンス制御が実行される区間(例えば、図11の時刻Aから時刻Bまでの区間)をN等分して候補点を設定し、設定された候補点の中間点を初期値とし、荷重ピークが高すぎる場合には、より時刻Aに近い候補点を選択し、逆に、荷重ピークが許容値以下になっている場合には、より時刻Bに近い候補点を選択するようにしてもよい。
典型的には、上述のいずれかの方法に従って、複数の候補点のうち最適値となるものを探索すればよい。このように、補正量Xだけ目標値を減じる条件は、移動部材が対象物に接触した直後に発生する荷重のピークと、移動部材が対象物に接触して荷重を与える一連の処理に要する時間(タクトタイム)の長さとを考慮して決定されてもよい。
なお、上述の説明においては、パラメータとして速度切替時刻Tcを用いる場合について例示したが、移動部材の位置および/または速度の条件に応じて、速度目標値を補正量Xだけ低減させるようにしてもよい。すなわち、例えば、移動部材の位置が予め定められた速度切替位置に到達すると、および/または、移動部材の移動速度が予め定められた速度切替速度に到達すると、インピーダンス制御における速度目標値を補正量Xだけ低減させるようにしてもよい。
図14は、本実施の形態に係る制御方法の第3の制御ロジックに係るフローチャートである。図14に示す各ステップは、典型的には、制御装置100の演算処理ユニット102のプロセッサ110がユーザプログラム116を実行することで実現される。
図14を参照して、プロセッサ110は、速度制御(または位置制御)およびインピーダンス制御に必要なパラメータの読み込みなどのセットアップを行う(ステップS200)。続いて、制御開始がトリガーされると(ステップS202においてYES)、予め定められた目標の速度パターンに従って速度指令値を算出する(ステップS204)。この算出された速度指令値はサーボドライバ14へ与えられる。
続いて、プロセッサ110は、速度制御からインピーダンス制御への切り替え条件が成立したか否かを判断する(ステップS206)。速度制御からインピーダンス制御への切り替え条件が成立していなければ(ステップS206においてNO)、ステップS204以下の処理が繰返される。
速度制御からインピーダンス制御への切り替え条件が成立していれば(ステップS206においてYES)、プロセッサ110は、インピーダンス制御に係る制御演算式に従って速度指令値を算出する(ステップS208)。この算出された速度指令値はサーボドライバ14へ与えられる。
続いて、プロセッサ110は、速度切替条件が成立したか否かを判断する(ステップS210)。速度切替条件は、上述したような、速度切替時刻Tcなどを含む。速度切替条件が成立していなければ(ステップS210においてNO)、ステップS208以下の処理が繰返される。
一方、速度切替条件が成立していれば(ステップS210においてYES)、プロセッサ110は、インピーダンス制御における速度目標値を補正量Xだけ低減させる(ステップS212)。そして、プロセッサ110は、インピーダンス制御に係る制御演算式に従って、低減後の速度目標値と連続するように速度指令値の算出を継続する(ステップS214)。
続いて、プロセッサ110は、制御終了条件が成立したか否かを判断する(ステップS216)。制御終了条件が成立していなければ(ステップS216においてNO)、ステップS214以下の処理が繰返される。
一方、制御終了条件が成立していれば(ステップS216においてYES)、一例の制御動作は終了する。
図15は、本実施の形態に係る制御方法の第3の制御ロジックに従う制御結果の一例を示すタイムチャートである。図15(A)には、速度制御とインピーダンス制御とを組み合わせた制御方法での測定結果の一例を示し、図15(B)には、図14(A)に示す制御方法に加えて、インピーダンス制御において速度目標値を所定タイミングで補正する制御方法での測定結果の一例を示す。
図15には、移動部材を対象物に接触させ、両者の接触後、100gfの荷重を対象物に与える例を示す。
図15(A)に示す測定結果においては、荷重のピークは195gfであり、設定加重の100gfに対して95gfの過加重となっている。但し、バウンド(加重ピーク発生後の不足加重)は発生しておらず、その意味では適切な設定となっていることが分かる。これに対して、図15(B)に示す測定結果においては、荷重のピークは135gfまで低減されており、設定加重の100gfに対して35gfの過加重に抑制されている。また、バウンド(加重ピーク発生後の不足加重)は発生しておらず、図15(A)に示す測定結果に比較して、より好ましい設定となっていることが分かる。
<H.実装例>
次に、本実施の形態に係る制御方法をユーザプログラム116上で実装する場合の構成例について説明する。
図16は、本実施の形態に係る制御方法の実行をユーザプログラム上で定義するためのファンクションブロックの一例を示す図である。図17は、本実施の形態に係る制御方法に含まれるインピーダンス制御をユーザプログラム上で定義するためのファンクションブロックの一例を示す図である。本実施の形態に係る制御方法は、図16に示すファンクションブロックと、図17に示すファンクションブロックとを組み合わせることで、プログラム上で実装される。
図16に示すファンクションブロックは、既存の制御ループに組み入れられるような用途が想定されており、”PreVelocity”の入力ポートに既存の制御ループにおいて速度指令値が格納される変数が関連付けられ、本制御方法により補正された後の速度指令値が格納される変数が”PreVelocity”の出力ポートに関連付けられる。
図17に示すファンクションブロックは、図16に示すファンクションブロックに入力された速度指令値に対して適用されるインピーダンス制御のパラメータなどを設定する。このファンクションブロックの各入力ポートに対して、目標値および必要なパラメータが設定される。
図16および図17に示すようなファンクションブロックを採用することで、ユーザは、制御方法の具体的なアルゴリズムを理解しなくとも、目的の制御をユーザプログラム上で用いることができ、本制御方法の適用範囲を広げることができる。
<I.応用例>
上述の説明においては、移動部材がボールねじの延伸方向に沿って移動するアクチュエータに対して、実施の形態に係る制御方法を提供する応用例について例示したが、これに限らず、部材間の距離および押し当て力(荷重)を制御するアクチュエータに適用できる。
図18は、本実施の形態に係る制御方法に用いられるアクチュエータの別の一例を示す模式図である。図18を参照して、アクチュエータ22は、基材24に対して回転駆動するように配置された移動部材28を含む。移動部材28は、図示しないモータなどによって、回転駆動されて、対象物30との間の相対距離を変化させるとともに、移動部材28から対象物30に対して荷重を与える。
移動部材28を何らかの部材を供給するレールなどとして構成することで、原料を供給するようなアプリケーションに適用できる。あるいは、移動部材28の先端にプローブなどを配置することで、対象物30を探傷する検査装置などとして用いることができる。
あるいは、移動部材28の先端に研磨部材などを配置することで、回転駆動する対象物30の表面を研磨するための研磨装置として用いることもできる。
このように、本実施の形態に係る制御方法は、図1に示すような直線運動する移動部材だけではなく、図18に示すような回転運動する移動部材、あるいは、さらに別の任意の挙動を示す移動部材を含む構成に適用できる。
<J.利点>
本実施の形態によれば、インピーダンス制御とインピーダンス制御以外の速度制御または位置制御とを組み合わせることで、高速かつ高精度な押し当て制御を実現できる。
また、本実施の形態によれば、インピーダンス制御に用いるパラメータセットが、移動部材が対象物に接触する前後の区間と、それ以降の区間とでそれぞれ別々に用意されることで、各局面に適したインピーダンス制御を実現できる。
また、本実施の形態によれば、インピーダンス制御に対して、ある条件が成立すると、予め取得された知見基づく補正量だけ目標値を補正することで、移動部材が対象物に接触したときに生じる荷重のピークを低減できるとともに、その荷重のピークを低減するためのパラメータ調整を容易化できる。さらに、荷重のピークの低減と、タクトタイムの適正化との両立を図ることもできる。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
1 制御システム、2,22 アクチュエータ、4 ハウジング、6 ボールねじ、8 ナット、10 モータ、12 カウンタ、14 サーボドライバ、16 ロードセル、28 移動部材、24 基材、30 対象物、100 制御装置、102 演算処理ユニット、104 機能ユニット、110 プロセッサ、112 主メモリ、114 二次記憶装置、116 ユーザプログラム、118 シーケンスプログラム、120 モーションプログラム、122 システムプログラム、124 バスマスタ回路、126 ローカルインターフェイス回路、128 ネットワークマスタ回路、152,156,160,162 係数演算器、154,158,164 加減算器、166 第1ポート、168 微分器、170 第2ポート、180 スイッチ。

Claims (9)

  1. 対象物と移動部材との間の相対距離を変化させるとともに、前記移動部材から前記対象物へ与える荷重の大きさを制御する制御装置であって、
    予め定められた速度または位置についてのパターンに従って前記移動部材についての指令値を順次算出する第1制御手段と、
    予め定められた第1条件が成立すると、前記第1制御手段による前記指令値の算出に代わって、インピーダンス制御に対応する制御演算式に従って前記移動部材についての指令値を順次算出する第2制御手段とを備え
    前記第1制御手段は、速度についてのパターンに従って前記移動部材についての速度指令値を順次算出し、
    前記第2制御手段は、前記制御演算式に従って、速度実績値を用いて今回の速度指令値を算出する、制御装置。
  2. 前記インピーダンス制御に対応する制御演算式は、指令値の次元についての目標値と実績値との差分に比例する項を含む、請求項1に記載の制御装置。
  3. 前記インピーダンス制御に対応する制御演算式は、指令値を積分した次元についての目標値と実績値との差分に比例する項をさらに含む、請求項2に記載の制御装置。
  4. 前記第2制御手段は、第1パラメータセットを設定した前記インピーダンス制御に従って、前記移動部材が前記対象物に接触する時点を含む第1期間を制御し、続いて、前記第1パラメータセットとは異なる第2パラメータセットを設定した前記インピーダンス制御に従って、前記第1期間に引き続く第2期間を制御する、請求項1〜のいずれか1項に記載の制御装置。
  5. 前記移動部材が前記対象物に接触する前に、前記移動部材についての速度指令値を算出するための目標値が予め取得された補正量だけ減じられる、請求項1〜のいずれか1項に記載の制御装置。
  6. 前記第2制御手段は、前記インピーダンス制御に対応する制御演算式に従って前記移動部材についての指令値が順次算出される過程において、予め定められた第2条件が成立すると、前記速度指令値を算出するための目標値を前記補正量だけ減じる、請求項に記載の制御装置。
  7. 前記第2条件は、前記第2制御手段による前記インピーダンス制御の開始から予め定められた時間が経過したことを含む、請求項に記載の制御装置。
  8. 前記第2条件は、前記移動部材が前記対象物に接触した直後に発生する荷重のピークと、前記移動部材が前記対象物に接触して荷重を与える一連の処理に要する時間の長さとを考慮して決定される、請求項に記載の制御装置。
  9. 対象物と移動部材との間の相対距離を変化させるとともに、前記移動部材から前記対象物へ与える荷重の大きさを制御する制御プログラムであって、前記制御プログラムはコンピュータに
    予め定められた速度または位置についてのパターンに従って前記移動部材についての指令値を順次算出する第1制御ステップと、
    予め定められた第1条件が成立すると、前記第1制御ステップによる前記指令値の算出に代わって、インピーダンス制御に対応する制御演算式に従って前記移動部材についての指令値を順次算出する第2制御ステップとを実行させ
    前記第1制御ステップは、速度についてのパターンに従って前記移動部材についての速度指令値を順次算出するステップを含み、
    前記第2制御ステップは、前記制御演算式に従って、速度実績値を用いて今回の速度指令値を算出するステップを含む、制御プログラム。
JP2016176673A 2016-09-09 2016-09-09 制御装置および制御プログラム Active JP6844158B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016176673A JP6844158B2 (ja) 2016-09-09 2016-09-09 制御装置および制御プログラム
CN201710092433.8A CN107807553B (zh) 2016-09-09 2017-02-21 控制装置、控制方法以及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016176673A JP6844158B2 (ja) 2016-09-09 2016-09-09 制御装置および制御プログラム

Publications (2)

Publication Number Publication Date
JP2018041391A JP2018041391A (ja) 2018-03-15
JP6844158B2 true JP6844158B2 (ja) 2021-03-17

Family

ID=61576454

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016176673A Active JP6844158B2 (ja) 2016-09-09 2016-09-09 制御装置および制御プログラム

Country Status (2)

Country Link
JP (1) JP6844158B2 (ja)
CN (1) CN107807553B (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6922829B2 (ja) * 2018-04-26 2021-08-18 オムロン株式会社 制御システム、制御方法、および制御プログラム
CN110022110B (zh) * 2019-05-05 2021-01-26 聚辰半导体股份有限公司 音圈马达阻尼控制电路
CN112612203B (zh) * 2020-12-17 2024-07-09 上海电气集团股份有限公司 康复机器人的控制方法、***、电子设备及存储介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3124519B2 (ja) * 1998-07-23 2001-01-15 セイコー精機株式会社 制御系のモード切替え機能を有するロボット制御装置
JP2001277162A (ja) * 2000-03-31 2001-10-09 Omron Corp インピーダンスパラメータ調整装置
JP4239083B2 (ja) * 2003-10-22 2009-03-18 株式会社安川電機 ロボットの制御装置および制御方法
JP2006147640A (ja) * 2004-11-16 2006-06-08 Matsushita Electric Ind Co Ltd 部品装着装置および部品装着方法
JP5308249B2 (ja) * 2009-06-22 2013-10-09 三菱重工業株式会社 サーボ制御装置
JP2011096840A (ja) * 2009-10-29 2011-05-12 Shibaura Mechatronics Corp 電子部品の実装装置及び実装方法
JP5997448B2 (ja) * 2012-01-31 2016-09-28 ファスフォードテクノロジ株式会社 ダイボンダ及びボンディング方法
JP6511715B2 (ja) * 2013-10-31 2019-05-15 セイコーエプソン株式会社 ロボット制御装置、ロボットシステム、及びロボット

Also Published As

Publication number Publication date
JP2018041391A (ja) 2018-03-15
CN107807553A (zh) 2018-03-16
CN107807553B (zh) 2021-04-02

Similar Documents

Publication Publication Date Title
JP7203058B2 (ja) 機械システムへの入力を生成する方法、及び複数のロボットジョイントを含むロボット
Ryu et al. Sampled-and continuous-time passivity and stability of virtual environments
US11148282B2 (en) Control device for motor drive device, control device for multi-axial motor, and control method for motor drive device
JP6844158B2 (ja) 制御装置および制御プログラム
US8138693B2 (en) Vibration isolation control system
US10481566B2 (en) Machine learning device, servo control device, servo control system and machine learning method
JP5028630B2 (ja) 位置決め機構の制御方法および制御装置
JP6457569B2 (ja) サーボモータ制御装置、サーボモータ制御方法、及びサーボモータ制御用プログラム
JP6545390B2 (ja) パラレルリンク機構の制御装置
JP5302639B2 (ja) サーボ制御装置
JP5574228B2 (ja) 波動歯車減速機の温度変化に伴う摩擦特性変動を考慮したアクチュエータの適応型摩擦補償法
JP4453526B2 (ja) サーボ制御装置
JP2022118153A (ja) ロボット操作のパラメーターを推定するための方法および計算システム
Sato et al. Practical control of precision positioning mechanism with friction
TWI516888B (zh) 伺服控制裝置
JP5836206B2 (ja) サーボ制御装置
JP2004234205A (ja) 数値制御装置
CN107894749B (zh) 伺服电动机控制装置及其方法、计算机可读取的记录介质
US20180200882A1 (en) Servomotor control device, servomotor control method, and computer readable recording medium
JP4183057B2 (ja) 数値制御システム
US20230152074A1 (en) Repeated determination of a position of a movable part of a coordinate measuring machine
JP2016173164A (ja) アクティブ制振装置および設計方法
JP5037065B2 (ja) 機械制御装置
JP2019049852A (ja) 制御装置、システム、制御方法及びプログラム
Nagatsu et al. Load-Side Sensor-less Disturbance Estimation Based on Integration of Motor-Side Velocity and Acceleration Information for Flexible Manipulators

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190705

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200529

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200707

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200806

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210208

R150 Certificate of patent or registration of utility model

Ref document number: 6844158

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150