JP5146512B2 - 制御装置、制御システムおよび制御方法 - Google Patents

制御装置、制御システムおよび制御方法 Download PDF

Info

Publication number
JP5146512B2
JP5146512B2 JP2010230342A JP2010230342A JP5146512B2 JP 5146512 B2 JP5146512 B2 JP 5146512B2 JP 2010230342 A JP2010230342 A JP 2010230342A JP 2010230342 A JP2010230342 A JP 2010230342A JP 5146512 B2 JP5146512 B2 JP 5146512B2
Authority
JP
Japan
Prior art keywords
target
speed
acceleration
target trajectory
end point
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
JP2010230342A
Other languages
English (en)
Other versions
JP2012083982A5 (ja
JP2012083982A (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 JP2010230342A priority Critical patent/JP5146512B2/ja
Priority to EP11832309.6A priority patent/EP2629163B1/en
Priority to CN201180049705.7A priority patent/CN103180791B/zh
Priority to PCT/JP2011/056227 priority patent/WO2012049866A1/ja
Priority to US13/877,930 priority patent/US9606524B2/en
Publication of JP2012083982A publication Critical patent/JP2012083982A/ja
Publication of JP2012083982A5 publication Critical patent/JP2012083982A5/ja
Application granted granted Critical
Publication of JP5146512B2 publication Critical patent/JP5146512B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • 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/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/416Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control of velocity, acceleration or deceleration
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/41Servomotor, servo controller till figures
    • G05B2219/41408Control of jerk, change of acceleration
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/42Servomotor, servo controller kind till VSS
    • G05B2219/42244Enter acceleration, jerk, generator outputs acceleration, speed, position by integration
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/43Speed, acceleration, deceleration control ADC
    • G05B2219/43061Maximum acceleration deceleration lookup table as function of distance

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Numerical Control (AREA)

Description

本発明は、複数の駆動軸により移動可能な可動部を有する装置を制御するための制御装置、当該制御装置を含む制御システム、および、制御方法に関する。
従来から、さまざまな産業分野において、いわゆる産業用ロボットやNC(Numerical Control)工作機械といった自動化装置が導入されている。このような装置の導入により、生産効率を高めることができる。
このような装置は、ワークを掴んだりするためのアームや、ワークを加工するためのエンドミルといった可動部を有している。このような可動部は、複数の駆動軸により移動可能となっており、これらの各駆動軸は、サーボモータやステッピングモータによって駆動される。
このような装置を用いてワークに対して加工などを行なう場合には、その挙動を決定する必要がある。このような挙動の決定には、予め挙動を計算しておくオフライン計算方式と作動中に動的に計算するオンライン計算方式とが存在する。
このような装置の挙動を制御するための従来技術としては、種々のものが提案されている。たとえば、特開平07−064620号公報(特許文献1)に開示される数値制御装置は、加減速制御を考慮した高速かつ高精度な速度制御が行なえ、スプライン曲線上を滑らかに駆動でき、工作機械の異常振動が低減でき、速度優先と精度優先の選択を可能とする。より具体的には、特許文献1に開示された数値制御装置は、始点および終点での急な加減速を抑制することで、機械振動を抑制するとともに、目標位置を超えることなく、かつ指定した加(減)速度で減速停止できる。
また、特開2000−148223号公報(特許文献2)に開示される曲線補間加減速制御方法は、曲線の形状に適した速い速度で移動するなめらかな加減速度を得る。
また、特開2000−163114号公報(特許文献3)に開示される補間曲線内加減速処理方法は、曲線の曲率にかかわらず、指令軌道の通りに機械を動かすことができる。
また、特開平06−075621号公報(特許文献4)に開示されるNC加工法は、曲率の大きな部分に対してのみ新たなサンプリングポイントを追加することにより、最小限のサンプリングポイント(データ)数で曲線を近似し、滑らかで形状差の少ない元の図形を再現する。
また、特開平01−147610号公報(特許文献5)に開示される数値制御装置は、スプライン補間制御により補間制御を行なう。
ところで、同一の種類の製品を大量生産する生産ラインに設置される装置では、目標軌道などの設定値(加工プログラム)を予め設定しておき、この設定値に従って動作させればよい。しかしながら、さまざまな製品を生産する多種少量生産の生産ラインなどでは、このような設定値(加工プログラム)を製品毎に設定することはコスト面などから難しい。そこで、たとえば、共通の加工プログラムを利用しつつ、商品仕様などに応じて、目標軌道などを動的に設定することで、生産コストを低減したいというニーズがある。
特開平07−064620号公報 特開2000−148223号公報 特開2000−163114号公報 特開平06−075621号公報 特開平01−147610号公報
上述のような目標軌道を動的に設定した場合には、その軌道長を正確に算出することが難しい。そのため、目標軌道上の速度設定が難しい。
また、ワークを切削加工するような処理では、エンドミルなどのツールの移動速度が切削量を左右するので、ツールの位置だけでなく移動速度の制御が重要である。すなわち、ツールの加速度の変動は、加工面の外観異常や品質不良につながる。そのため、移動中の加速度は可能な限り一定にしたいというニーズがある。特に、直線部分においては、加速度が変動すると不具合が発生し易い。
さらに、ワークを切削加工するような処理では、ある区間に対する加工処理の後、続いて別の区間に対して加工処理がなされる場合がある。そのため、設定した目標軌道の終点における移動速度が所定の目標値に維持されていることが好ましい。そうでなければ、目標軌道の終点の近くで移動速度が不連続になったり、後続の直線区間において加速度が不連続になったりする。
上述した特許文献1〜5に開示される技術は、このような課題を解決するものではなかった。
たとえば、特許文献1に開示されるような加速度を一定値に制限する方法では、算出される終点までの距離についての誤差や速度上昇中の速度変動によって、目標軌道の終点に到達するタイミングがばらつくため、終点の移動速度を所定の目標値に維持することができない。
また、特許文献2および3に開示される技術は、予め補間曲線や目標速度を設計(オフライン計算方式)していたため、目標軌道や終点を動的に変更することが困難であった。仮に、目標軌道や終点を動的に変更できたとしても、目標速度が固定的に設計されているので、移動中に出力飽和などによって速度変動があると、その速度変動からの回復のために過剰な速度変動が発生し、加工面の外観異常や品質変動といった不具合が生じる可能性があった。
さらに、移動速度が所定の目標値となるように目標軌道の終点へ到達させるためには、現在位置から終点までの軌道長(残距離)を制御周期毎に算出した上で、速度指令を計算する必要があり演算量が増大する。そのため、各制御周期内でこのような演算処理を完結するためには、処理能力の制約などによって容易ではなかった。
そこで、本発明は、このような課題を解決するためになされたものであり、その目的は、目標軌道が動的に生成された場合であっても、その目標軌道の終点における速度を目標値に維持することのできる制御装置、制御システムおよび制御方法を提供することである。
本発明のある局面によれば、複数の駆動軸により移動可能な可動部を有する装置を制御するための制御装置を提供する。制御装置は、始点および終点により定義される移動区間に対して目標軌道を生成する目標軌道生成手段と、目標軌道における現在位置から終点までの残距離を推定する残距離推定手段と、可動部の現在の移動速度を、目標軌道の終点において可動部が満たすべき移動速度である目標速度まで変更した場合に、可動部が移動する距離が残距離と実質的に一致するように、当該変更に係る加速度を算出する加速度算出手段と、現在の移動速度を算出した加速度で補正することで移動速度の新たな目標値を算出する移動速度更新手段とを含む。
好ましくは、加速度算出手段は、現在の移動速度、目標速度、および、距離に基づいて加速度を算出する。
好ましくは、加速度算出手段は、各制御周期において、現在の移動速度を目標速度まで一定レートで変化させるように、加速度を算出する。
好ましくは、残距離推定手段は、目標軌道における現在位置から終点までの区間に対して予め定められた数のサンプル点を設定するとともに、設定したサンプル点を補間することで残距離を推定する。
さらに好ましくは、残距離推定手段は、目標軌道における現在位置から終点までの区間について、現在位置に遠い区間に比較して現在位置に近い区間ほど、サンプル点の間隔がより密になるように、サンプル点を設定する。
好ましくは、目標軌道は、媒介変数を含む関数の形で定義される。
好ましくは、制御装置は、移動速度更新手段によって算出された移動速度の新たな目標値となるように、可動部が1制御周期内に移動すべき量を示す指令を出力する移動指令手段をさらに含み、移動指令手段は、移動速度の新たな目標値に対応して、可動部が移動すべき距離を算出する手段と、可動部が移動すべき距離に対応して、目標軌道における可動部の移動すべき位置を算出する手段と、可動部の移動すべき位置に対応して、複数の駆動軸の各々に対する移動指令を算出する手段とを含む。
さらに好ましくは、目標軌道は、ベジェ曲線により定義される。
好ましくは、目標軌道生成手段は、外部入力される信号に応答して、目標軌道を生成する。
好ましくは、移動速度更新手段は、加速度および/または加加速度の変化量が予め定められた制限を超過しないように、移動速度の新たな目標値を算出する。
この発明の別の局面に従う制御システムは、複数の駆動軸により移動可能な可動部を有する可動機構と、可動機構を駆動するためのドライバと、ドライバに対して制御指令を与える制御装置とを含む。制御装置は、始点および終点により定義される移動区間に対して目標軌道を生成する目標軌道生成手段と、目標軌道における現在位置から終点までの残距離を推定する残距離推定手段と、可動部の現在の移動速度を、目標軌道の終点において可動部が満たすべき移動速度である目標速度まで変更した場合に、可動部が移動する距離が残距離と実質的に一致するように、当該変更に係る加速度を算出する加速度算出手段と、現在の移動速度を算出した加速度で補正することで移動速度の新たな目標値を算出する移動速度更新手段とを含む。
この発明のさらに別の局面に従えば、複数の駆動軸により移動可能な可動部を有する装置を制御するための制御方法を提供する。制御方法は、始点および終点により定義される移動区間に対して目標軌道を生成するステップと、目標軌道における現在位置から終点までの残距離を推定するステップと、可動部の現在の移動速度を、目標軌道の終点において可動部が満たすべき移動速度である目標速度まで変更した場合に、可動部が移動する距離が残距離と実質的に一致するように、当該変更に係る加速度を算出するステップと、現在の移動速度を算出した加速度で補正することで移動速度の新たな目標値を算出するステップとを含む。
本発明によれば、目標軌道が動的に生成された場合であっても、その目標軌道の終点における速度を目標値に維持することができる。
本実施の形態に従うシステムの外観を示す模式図である。 本実施の形態に従うシステムに含まれる制御装置の外観を示す模式図である。 本実施の形態に従うシステムに含まれる制御装置のハードウェア構成を示す模式図である。 本実施の形態に従う制御ロジックの処理手順の概略を示すフローチャートである。 ワークへの切削加工処理の一例を示す図である。 ワークをL字状に切削する場合に円弧補間を用いて目標軌道を生成する処理例を示す図である。 ワークのコーナーを切削する場合に自由曲線を用いて目標軌道を生成する処理例を示す図である。 本実施の形態に従う目標軌道(ベジェ曲線)の生成方法について説明するための図である。 本実施の形態に従う残距離の推定方法について説明するための図である。 本実施の形態に従う目標加速度の算出方法について説明するための図である。 本実施の形態に従うベジェ曲線およびその軌道長の特性を示す図である。 ベジェ曲線における媒介変数の変位量と軌道長の変位量との関係を示す図である。 本実施の形態に従う制御ロジックにおける軌道長の変化量に対する媒介変数増分の算出方法について説明するための図である。 本実施の形態に従う制御ロジックを実現するための機能ブロックを示す模式図である。 本実施の形態に従う制御ロジックによって得られる可動機構の挙動例を示すタイムチャートである。 本実施の形態に従う制御ロジックの全体処理手順を示すフローチャートである。 本実施の形態の変形例に従う制御ロジックによって得られる可動機構のTCP速度を示すタイムチャートである。
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
<A.システム構成>
まず、本実施の形態に従うシステムSYSの全体構成について説明する。以下の説明では、本実施の形態に従うシステムSYSの適用例として、ワークを切削加工する生産ラインについて説明する。このような切削加工の典型例としては、木材加工、ガラス加工、金属加工などが挙げられる。当然のことながら、本発明は、これらの実施の形態に記載された分野に限定されるものではなく、各種の産業分野へ適用可能である。
図1は、本実施の形態に従うシステムSYSの外観を示す模式図である。図2は、本実施の形態に従うシステムSYSに含まれる制御装置1の外観を示す模式図である。図3は、本実施の形態に従うシステムSYSに含まれる制御装置1のハードウェア構成を示す模式図である。
図1を参照して、本実施の形態に従うシステムSYSは、制御装置1と、切削対象となる木材や金属などのワーク2の寸法などを示すメジャー3と、制御装置1からの指令によって駆動されるロボット(可動機構)4と、オペレータなどの操作に応答して軌道変更などのイベントを出力するスイッチ5とを含む。制御装置1については、図2および図3を参照して後に詳述する。
ワーク2は、ベース上に置載されるとともに、オペレータなどの操作によって、それぞれ所望の形状に切断される。典型的には、このワーク2に沿って、メジャー3が設けられており、可動機構4がある軌道に沿って切削を行い、目的の位置まで到達すると、オペレータがスイッチ5を操作する。これにより、後述するような制御ロジックに従って、軌道が変更される。
可動機構4は、複数の駆動軸により移動可能な可動部(アーム部分)を有する装置であり、このアーム部分の先端には、ワーク2を切削するためのツール(典型的には、エンドミル)が装着されている。このアーム部分は、後述するように、それぞれにモータが機械的に連結された複数の駆動軸(典型的には、3軸または6軸)に従って移動する。
制御装置1は、このエンドミルの位置を、後述するような制御ロジックに従って制御することで、ワーク2を目的の大きさや形状を有する部品に加工する。なお、このエンドミルの位置を、以下では「TCP(Tool Center Point)」とも称する。また、可動機構4のアーム部分の移動速度(エンドミルの移動速度)を「TCP速度」とも称する。
本実施の形態に従う制御装置1は、オペレータによるスイッチ5に対する操作などに応答して、目標軌道を動的に決定/変更する。たとえば、同一のワーク2に対して、品種によって異なる長さを有する略長方形の部品を製作することを考えると、加工を開始する部分(すなわち、直線部分の長さ)は異なるが、加工する内容(すなわち、加工面の曲率など)は同じとなることも多い。このような場合には、同一の加工プログラム(加工面における目標軌道などの情報が定義されている)を利用して、その絶対的な目標軌道を品種に応じて動的に決定することができる。このような目標軌道の動的な決定は、オペレータがメジャー3(および、その目盛り上に設けられた矢印)と可動機構4との位置関係を確認して、スイッチ5を操作することで実行される。
図2を参照して、制御装置1は、典型的には、いわゆるPLC(Programmable Logic Controller)をベースとして構成されている。具体的には、制御装置1は、PLC20と、モータドライバ31,32,33とを含む。
PLC20は、後述する本実施の形態に従う制御ロジックを実行する処理主体である。なお、制御ロジックは、一般的にモーションプログラムと称されるものであり、可動機構4を駆動するためのモータを制御するプログラムである。このようなモーションプログラムのシーケンスは、ラダー図(ラダーダイアグラム)言語などを用いてシーケンスプログラムの形で記述される場合もある。さらに、このようなシーケンスプログラムに加えて、各種の算術演算を行なうためのプログラム(ファンクション)が実行される。
より具体的には、PLC20は、電源ユニット21と、主演算ユニット22と、IO(Input Output)ユニット23と、MC(Motion Control)ユニット24とを含む。電源ユニット21、主演算ユニット22、IOユニット23、および、MCユニット24は、バックプレーン25を介して互いに電気的に接続される。
電源ユニット21は、各ユニットを駆動するための直流電力や、IO用の直流電力を発生する。この電源ユニット21で発生した電力は、バックプレーン25を介して各ユニットに配分される。
主演算ユニット22は、シーケンスプログラムを実行する。
IOユニット23は、制御対象の装置などに設置されたセンサなどからの検出信号を受け取るとともに、制御対象の装置に設置されたアクチュエータや表示装置などに対して制御指令を出力する。
MCユニット24は、主演算ユニット22からの指令に従って、モーションプログラムを実行し、その結果算出された制御指令をモータドライバ31,32,33へ出力する。MCユニット24は、時間の経過に従ってモータドライバ31,32,33へ一連の制御指令を出力する。MCユニット24は、モーションプログラムの実行状況および実行結果を主演算ユニット22へ報告する。
なお、図2には、主演算ユニット22とは独立したMCユニット24を設けた構成を例示するが、主演算ユニット22がMCユニット24の機能を兼ね備えることで、専用のMCユニット24を省略する構成を採用することもできる。
図3を参照して、PLC20のハードウェア構成について説明する。主演算ユニット22内には、マイクロプロセッサ(MPU:Micro-Processing Unit)221と、システムプログラムメモリ(SROM:System-program Read Only Memory)222と、バッファメモリ(BROM:Buffer Read Only Memory)223と、ワークメモリ(WRAM:Working Random Access Memory)224と、通信インターフェイス(通信I/F)225と、ユーザメモリ(UM:User Memory)226と、IOメモリ(IOM:Input Output Memory)228とを含む。
マイクロプロセッサ(MPU)221は、ユニット全体を統括制御する。より具体的には、マイクロプロセッサ221は、ユーザメモリ226から順次ユーザプログラムを構成する各命令語を読み出しては実行する。システムプログラムメモリ(SROM)222は、マイクロプロセッサ221で実行されるプログラムを格納する。バッファメモリ(BROM)223は、ユーザプログラムを格納する。ワークメモリ(WRAM)224は、マイクロプロセッサ221がシステムプログラムを実行する際のワークエリアとして使用される。通信インターフェイス225は、後述するように、PC(パーソナルコンピュータ)10とのデータ通信を行なう。ユーザメモリ(UM:User Memory)226は、電源投入と共にバッファメモリ223から転送されるユーザプログラムを格納する。IOメモリ(IOM)228は、IOユニット23やMCユニット24の入出力状態を反映するように保持する。
なお、マイクロプロセッサ(MPU)に代えて、あるいは、それに加えて、特定用途向集積回路(ASIC:Application Specific Integrated Circuit)を採用してもよい。
IOユニット23内には、処理回路(MPU)231と、入力回路232と、出力回路233とを含む。入力回路232は、可動機構4に設けられた各種センサなどからの検出信号を受け取って、その状態値を主演算ユニット22へ出力する。典型的には、入力回路232は、フォトカプラ回路などで構成される。出力回路233は、制御対象の装置などに設置されたアクチュエータや表示装置などに対して制御指令を出力する。処理回路231は、入力回路232および出力回路233との間で内部的な指令を遣り取りする。
MCユニット24内には、処理回路(MPU)241と、コントローラインターフェイス(コントローラI/F)242と、入力回路243と、出力回路244とを含む。コントローラインターフェイス242は、モータドライバ31,32,33(図2参照)との間のデータ伝送を管理する。入力回路243および出力回路244は、それぞれ入力回路232および出力回路233と同様である。但し、入力回路243および出力回路244は、主として、モーション制御(モータドライバ31,32,33およびモータ41,42,43)に関する情報を遣り取りする。
再度、図2を参照して、モータドライバ31,32,33は、MCユニット24からの制御指令を受けて、対応するモータ41,42,43を駆動する。すなわち、モータドライバ31,32,33は、モータ41,42,43に駆動電力を供給する。
モータ41,42,43は、可動機構4(図1参照)の構成要素である。可動機構4は、これらのモータが回転駆動することによって、そのアーム部分を移動させる。なお、モータ41,42,43としては、サーボモータやステッピングモータなどが採用される。この場合、採用するモータの種類に応じたモータドライバが用いられる。
図2には、モータドライバ31,32,33は、イーサキャット(EtherCAT)(登録商標)などの通信線60を介してMCユニット24と接続される構成例を示す。但し、MCユニット24とモータドライバ31,32,33とを直接的に接続してもよい。
MCユニット24からモータドライバ31,32,33へ与えられる制御指令は、モータの位置、速度、トルクなどの値である。本実施の形態においては、モータドライバ31,32,33の各々に対する位置指令(目標位置)がMCユニット24から一定周期で与えられるものとする。この目標位置としては、モータ41,42,43の回転位置(回転角度)である場合であってもよいし、モータ41,42,43によって駆動される可動機構4の特定部位の位置であってもよい。すなわち、いずれの座標を基準として目標位置を定めるかの問題であって、状況に応じて、適切な基準が採用される。
なお、本実施の形態においては、目標位置として、いわゆる「溜りパルス」が用いられる。すなわち、目標位置が「制御周期内に送られるパルスの数」として表現される。この場合、パルス数は、直前の制御周期における位置からの相対位置(位置の偏差量/変化量)を示す。
モータドライバ31,32,33は、位置指令(目標位置)を解釈して、モータ41,42,43を駆動するために必要な設定情報(たとえば、位置指令を電流値に変換するための係数など)を有している。たとえば、モータドライバ31,32,33には、モータ41,42,43の1回転に対応するパルス数の情報が予め設定される。
モータドライバ31,32,33は、モータ41,42,43に設けられたサーボモータの回転位置を検出するエンコーダから、現在位置(実測値)のフィードバックを受ける。モータドライバ31,32,33は、実測値および実測値の変化分として算出される実測速度を用いて、実測値が指令値に追従するように駆動電力の大きさを制御する(フィードバック制御)。
また、MCユニット24には、モータドライバ31,32,33と同様にモータ41,42,43の1回転に対応するパルス数の情報が予め設定されるほか、モータ41,42,43の1回転に対応する可動機構4の特定部位の位置についての移動量の情報が予め設定される。これらの設定値を用いて、MCユニット24は、制御周期ごとにプログラムされた制御対象の運動を実現するのに必要な数のパルスを算出してモータドライバ31,32,33に送る。
一方、PC10は、汎用的なコンピュータをベースとして構成され、USB(Universal Serial Bus)などの通信線を介して主演算ユニット22に接続される。PC10からは、本実施の形態に従う制御ロジックを実現するためのプログラムが主演算ユニット22へ転送されるとともに、PC10のディスプレイ上では、PLC20の動作状況やログなどを確認することができる。なお、PC10の構成について、公知であるので、ここでは詳細な説明は行なわない。
なお、図2には、PLCベースの制御装置1を図示したが、この構成に限られることはない。たとえば、汎用的なコンピュータベースの処理装置と、モータドライバ31,32,33やセンサなどとの間で信号を遣り取りする入出力装置とを組み合わせて、制御装置1を構成してもよい。
このような構成を採用した場合には、本実施の形態に従う制御ロジックを実現するために、OS(Operating System)が提供する汎用モジュールを利用する場合もある。すなわち、本実施の形態に従う制御ロジックを提供するためのプログラムとして、一部の共通的な機能を有さないような形態も存在するが、そのような形態であっても、本発明の範囲に含まれることは明らかである。
さらに、制御装置1が提供する機能を、ソフトウェアと専用ハードウェア回路との組み合わせとして具現化してもよい。
<B.概要>
本発明の実施の形態に従う制御ロジックでは、予め設定された目標軌道の終点におけるTCP速度が最終目標速度と一致するように、現在速度をなるべく変動の少ない加速度で加減速させる。すなわち、TCP速度が最終目標速度に向けて滑らかに変化するとともに、後続の軌道における目標速度との連続性も維持できる。これにより、仕上げ面の均一性を向上させる。
このような現在速度を最終目標速度へ変化させるための目標加速度は、各制御周期において、対象の目標軌道上における現在位置から終点までの残距離を推定するとともに、当該推定した残距離に基づいて最適な値が算出される。このように、各制御周期において、目標軌道における終点を考慮しながら、目標加速度が逐次算出されるので、目標軌道の終点において速度や加速度が急激に増加/減少するといった事態を解消することができる。
本実施の形態に従う制御ロジックにおいては、現在速度および目標速度を線形補間または多項式補間した速度軌道に基づいて算出する。特に、区間を分割するためのサンプル数を残距離にかかわらず一定数にするので、計算時間が確定的となり、オンライン計算方式により適した構成となる。これにより、目標軌道としてベジェ曲線といった自由関数を用いた場合であっても、上述のような残距離の推定における処理時間を1制御周期内で完了することを保証できる。
本実施の形態に従う制御ロジックにおいては、TCP速度の変更に係る、加速度および加加速度の変化量がそれぞれ予め定められた制限値を超過しないように制約される。そのため、可動機構4における「びびり」やトルクオーバーの発生を抑制できる。
<C.全体処理手順>
次に、本実施の形態に従う制御ロジックの概略について説明する。
図4は、本実施の形態に従う制御ロジックの処理手順の概略を示すフローチャートである。なお、図4に示す各ステップは制御装置1によって実行されるが、その実行主体は実装形態によって異なる。すなわち。主演算ユニット22(図2参照)がすべての処理を行なう場合もあるし、主演算ユニット22とMCユニット24(図2参照)とが共同して処理を行なう場合もある。
図4を参照して、まず、システムSYSでの制御が開始される。このとき、可動機構4によるワーク2の切削が開始される(図1参照)(ステップS2)。続いて、目標軌道の生成タイミングであるか否かが判断される(ステップS4)。すなわち、可動機構4がワーク2の所定の位置まで到達した場合に当該位置に応じた目標軌道が生成されることになるが、この目標軌道を生成すべきか否かが判断される。より具体的には、図1に示すようなスイッチ5から信号(検出信号)が外部入力されたか否かが判断される。目標軌道の生成タイミングでなければ(ステップS4においてNO)、ステップS4の処理が繰返される。
これに対して、目標軌道の生成タイミングであれば(ステップS4においてYES)、始点および終点により定義される移動区間に対して目標軌道が生成される(ステップS6)。すなわち、外部入力される信号に応答して目標軌道が生成される。なお、始点および終点は、予め設定されている情報に基づいて決定される。言い換えれば、ワーク2の現実の位置に関連付けて始点および終点が設定されてもよいし、ワーク2の現実の位置とは独立して始点および終点が設定されてもよい。そして、以下に示すような、可動機構4を目標軌道に沿って移動させるための処理が開始される。
まず、目標軌道における現在位置から終点までの残距離が推定される(ステップS8)。すなわち、可動機構4のTCPの現在値(現在位置を示す情報)が取得されるとともに、決定された目標軌道(を示す関数)を用いて、目標軌道の終点までの距離が推定される。
続いて、可動機構4の現在のTCP速度(可動部の移動速度)を目標軌道の終点において可動機構4の可動部が満たすべき移動速度である最終目標速度まで変更した場合に、可動機構4の可動部が移動する距離がステップS8において推定された残距離と実質的に一致するように、当該目標加速度が算出される(ステップS10)。さらに、現在のTCP速度をステップS10において算出した目標加速度で補正することでTCP速度の新たな目標値が算出される(ステップS12)。
ここで、TCPが設定した目標軌道の終点に到達しているか否かが判断される(ステップS14)。すなわち、目標軌道に沿ったモーション制御が終了したか否かが判断される。TCPが設定した目標軌道の終点に到達していれば(ステップS14においてYES)、今回の目標軌道に基づくモーション制御は終了する。なお、同一のワーク2に対して複数の目標軌道を設定するようにプログラムされている場合には、ステップS2以下の処理が再度実行される。
これに対して、TCPが設定した目標軌道の終点に到達していなければ(ステップS14においてNO)、ステップS12において算出されたTCP速度の新たな目標値となるように、可動機構4の可動部が1制御周期内に移動すべき量を示す指令が出力される(ステップS16)。すなわち、次の制御周期の開始タイミングにおいて、TCPが新たな目標値に対応した位置に移動しているように、所定数のパルス(溜りパルス)がそれぞれのモータドライバ31,32,33へ与えられる。そして、次の制御周期まで待機し(ステップS18)、ステップS8以下の処理が繰返される。
以下、図4に示す主要ステップの内容について詳述する。
<D.目標軌道の生成(ステップS6)>
(d1:従来技術における課題など)
まず、本実施の形態に従う目標軌道の生成処理について説明する前に、従来技術における課題などについて説明する。
図5は、ワーク2への切削加工処理の一例を示す図である。図5に示すように、たとえば、一辺が同様の形状に切削される複数種類の製品(品種Aおよび品種B)を製作する場合を考える。図5に示す品種Aと品種Bとの間では、切削の形状は同一であるが、その切削を開始する位置が異なっている。この場合、ワーク2は長手方向に搬送されるのであるから、この切削の開始タイミングを異ならせるだけで、品種Aおよび品種Bを製作することができる。この場合、切削される部分について見れば、同じ軌道で切削すればよいことになる。
このようなアプリケーションにおいては、各品種について加工図面や加工プログラムを作成することなく、共通の加工プログラムを用意するとともに、ワーク2とロボットとの間の相対位置関係を検出して、目標軌道を動的に(すなわち、オンラインで)設定したいというニーズがある。このような加工プログラムを共用することにより、生産コストを低減できる。
まず、このようなオンライン計算方式を利用する場合には、制御周期(サンプリング間隔)内に新たな目標軌道の生成処理を完了して、それまで使用していた目標軌道を変更する必要がある。すなわち、新たな目標軌道の設定が一制御周期内に完了することを保証する。そのため、目標軌道としては、複雑なもの、あるいは、対象の形状に依存して処理量が変化するものを採用することは現実的ではない。
そこで、従来からある一つのアプローチとしては、円弧補間を用いる方法が存在していた。
図6は、ワーク2をL字状に切削する場合に円弧補間を用いて目標軌道を生成する処理例を示す図である。
図6(a)には、円弧補間が適切に設定された例を示す。一方、図6(b)および図6(c)には、円弧補間が不適切に設定された例を示す。
図6(b)は、ワーク2の切削形状を維持するために、曲率が不適切に設定された結果、軌道上での方向ベクトルが不連続になっている例を示す。図6(c)は、軌道上での方向ベクトルの連続性を維持するために、一定の曲率を有する円弧を用いて無理に方向ベクトルを連続化し、その結果、目的の切削形状を実現できずにワーク2の加工面への食い込みが発生した例を示す。
また、始点の速度ベクトルおよび終点の速度ベクトルをそれぞれ連続にしたいというニーズも存在する。速度ベクトルが不連続になると、面のつなぎ目が顕在化したり、削り量の変化が発生したりしてしまい、加工後の仕上がり(外観)の品質が低下してしまうからである。しかしながら、円弧補間を用いた場合には、始点ベクトルと終点ベクトルとが同一面内にはない場合に、軌道上での速度ベクトルが不連続になるという本質的な課題もある。
また、円弧補間においては、面取りのカーブの曲率設計が必要となるが、目標形状に含まれるすべてのコーナーについて、この作業をすることはコスト的および時間的に難しい。そのため、円弧の大まかな曲率半径だけを設定しておき、この予め設定した曲率半径では対処できないコーナーについては、目標軌道の再設計を自動化したいというニーズも存在する。しかしながら、従来の円弧補間では、このようなニーズに対応することができなかった。
従来からある別のアプローチとしては、自由曲線を用いる方法が存在していた。
図7は、ワーク2のコーナーを切削する場合に自由曲線を用いて目標軌道を生成する処理例を示す図である。図7(a1)は、従来技術に従って生成された目標軌道に沿って移動する可動機構4のTCP速度の例を示し、図7(a2)は、従来技術に従って生成された目標軌道の例を示す。
図7(a1)に示すように、終点の速度ベクトルが不連続になると、端面の切削量が急激に変化して仕上がり(外観)にムラが生じる。すなわち、終点において可動機構4が急加速して切削面の荒れや膨らみが生じ得る。これにより、外観を損なうほか、隙間があくなどの機能上の問題が発生する。また、可動機構4の急加速によって、方向ベクトルも不連続化して、その切削面に不連続な線が生じてしまう。
図7(b1)は、本実施の形態に従う制御ロジックによって制御される可動機構4のTCP速度の例を示し、図7(b2)は、本実施の形態に従う制御ロジックによって生成された目標軌道の例を示す。
本実施の形態においては、図7(b1)に示すように、後続の軌道速度との連続性を保つために、目標軌道の終点におけるTCP速度が所定の最終目標速度と一致するように制御する。同時に、図7(b1)に示すように、目標軌道上における速度ベクトルの連続性を保つように制御する。これにより、図7(b2)に示すように、所望の目標軌道を生成することができる。
本実施の形態に従う制御ロジックでは、主として、自由曲線を用いて目標軌道を生成する。
しかしながら、上述したような円弧補間では、目標軌道上のTCP速度を目標速度に一致させることができるが、それ以外の自由曲線による補間では、目標軌道上のTCP速度(特に終点速度)を目標速度に一致させることができていない。また、自由曲線を用いて目標軌道を生成する場合の課題としては、制御周期内での演算処理の完了が保証されない可能性がある。すなわち、目標軌道の終点における速度ベクトルを目標値に維持するためには、オンラインで残距離(残軌道長)を算出することが必要となる。しかしながら、自由曲線(円弧補間を除く)では、目標軌道の軌道長を初等関数で表現することができないため、目標軌道の軌道長さを短時間で算出することは難しい。また、数値積分を用いれば残距離を計算することもできるが、正確な残距離を算出するために、曲率に応じて分割数を変更しつつ積分処理を行なうと、一制御周期内での残距離の算出処理の完了を保証できない。
(d2:本実施の形態における方法)
上述のような課題を考慮して、本実施の形態に従う制御ロジックでは、目標軌道の始点および終点におけるそれぞれの方向ベクトルの連続性を維持するために自由曲線を用いて、目標軌道を設定する。このような目標軌道は、媒介変数を含む関数の形で定義する。
具体的には、ベジェ曲線、βスプライン曲線、NURBUS、エルミート曲線、カットマル−ロムスプライン曲線、Ferguson/Coons曲線といった補間曲線を用いることができる。以下に説明する制御ロジックでは、これらの補間曲線のうち「ベジェ曲線」を採用した場合を例に説明する。
このような補間曲線(ベジェ曲線)を採用することで、図6(c)に示すような、目標軌道のワークへの食い込みを防止することができる。
図8は、本実施の形態に従う目標軌道(ベジェ曲線)の生成方法について説明するための図である。図8を参照して、ベジェ曲線を用いて目標軌道を生成する場合には、少なくとも、始点および終点を含む移動区間が定義される必要がある。
このとき、目標軌道を設定するための基準となる第1軌道および当該第1軌道に連なる軌道である第2軌道が定義される。目標軌道の始点は、第1軌道上に位置し、目標軌道の終点は、第2軌道上に位置することになる。
第1および第2軌道は任意に設定できるが、図1に示すようなシステムSYSでは、ワークの加工面が第1および第2軌道として定義される。始点P1(x1,x2,x3)は、スイッチ5(図1参照)などでワーク2が所定位置に到達したことに応答して決定されてもよい。ベジェ曲線を設定するためには、2つのコントロールベクトルが必要であるため、始点P1の決定に伴って、コントロール点P2およびP3が決定されるとともに、これらの点によってコントロールベクトル1および2も決定される。
なお、図1に示すような切削への適用例においては、コントロール点P2(x2,y2,z2)およびP3(x3,y3,z3)は予め定められていることが一般的である。そのため、始点P1が決定されると、この始点P1とコントロール点P2とを結ぶ線分として、コントロールベクトル1が決定される。また、始点P1とコントロール点P2との位置関係などに対応して、終点P4(x4,y4,z4)が決定される。すると、コントロール点P3と終点P4とを結ぶ線分として、コントロールベクトル2が決定される。
このようにコントロールベクトル1および2が決定されることで、ベジェ曲線、すなわち、目標軌道が決定される。
より具体的には、媒介変数r(0≦r≦1)を用いて、目標軌道上の目標位置P(r)は、以下のように表すことができる。なお、一般的には、目標位置P(r)は、3次元座標上の値として定義される。
P(r)=(1−r)×P1+3(1−r)×r×P2+3(1−r)×r×P3+r×P4
なお、ベジェ曲線以外の補間曲線を用いる場合には、第1および第2軌道とは独立した位置にコントロールベクトルを設定してもよい。また、第1軌道と第2軌道とは必ずしも直交する必要はない。
さらに、始点P1、コントロール点P2おおびP3、終点P4についても任意に設定することができる。すなわち、これらの点をセンサによる検出に応じて定めてもよいし、予め固定された値を設定しておいてもよい。
このような、ベジエ曲線を用いて目標軌道を設定することで、図8に示すように、2つのコントロールベクトルの間に目標軌道が生成されるので、木工加工などの加工面への食い込みが許されないアプリケーションでの目標軌道の生成に適している。また、目標軌道の始点および終点がコントロールベクトルの始点および終点にそれぞれ一致するので、コントロールベクトルを容易に生成できる。
<E.残距離の推定(ステップS8)>
次に、目標加速度を算出するための基準となる、目標軌道における現在位置から終点までの残距離の推定処理について説明する。
後述するように、ベジェ曲線は、媒介変数により定義される高次の関数となり、媒介変数と軌道長との関係を初等関数で表現することができない。そのため、目標軌道上のある位置(現在位置)から終点までの残距離を正確に算出しようとすると、数値積分を用いる必要がある。一方で、数値積分をするための分割点を多く設定してしまうと、演算処理が増大して、算出処理が一制御周期内で完了しない可能性がある。
そこで、本実施の形態に従う制御ロジックにおいては、目標軌道における現在位置から終点までの区間に対して予め定められた一定数のサンプル点を設定するとともに、設定したサンプル点を線形補間または多項式補間することで残距離を推定する。
図9は、本実施の形態に従う残距離の推定方法について説明するための図である。図9(a)は、現在位置が目標軌道の始点に近い場合(時刻t1)を示し、図9(b)は、現在位置が目標軌道の終点に近い場合(時刻t2)を示す。
図9(a)および図9(b)に示すように、残距離lLeft(t)は、隣接するサンプル点P1,P2,…,Pn−1の間の距離L1,L2,…,Lnの合計ΣLiとして算出される。なお、設定するサンプル点の数は、制御装置1の処理能力などに依存して決定すればよいが、たとえば、4〜6点が好ましい。
図9(a)と図9(b)とを比較してわかるように、目標軌道上の現在位置が始点に近い場合であっても、終点に近い場合であっても、目標軌道上に設定するサンプル点は一定数に維持される。そのため、目標軌道上の現在位置が始点に近い場合には、サンプル点の間の距離が相対的に大きくなり、推定精度が低下するが、逆に、目標軌道上の現在位置が終点に近い場合には、サンプル点の間の距離が相対的に小さくなり、推定精度が向上する。すなわち、目標軌道の曲率が大きくなる程、残距離についての推定誤差は大きくなるが、終点に近付く程にその誤差は解消する。
後述するように、この推定の残距離lLeft(t)は、目標加速度(すなわち、目標軌道上のTCP速度の速度変化分)を決定することになるが、目標軌道上の現在位置が終点に近くなる程、その算出される目標加速度の精度が高くなる。その結果、終点に近付く程、TCP速度が終点での最終目標速度に一致することになる。
好ましくは、図9(a)および図9(b)に示すように、サンプル点は、目標軌道における現在位置から終点までの区間について、現在位置に遠い区間に比較して現在位置に近い区間ほど、サンプル点の間隔がより密になるように設定される。
上述したように、目標軌道の始点は媒介変数r=0に相当し、目標軌道の終点は媒介変数r=1に相当する。すなわち、媒介変数rを0から1まで増加させることで、目標軌道上の現在位置が始点から終点まで移動する。そこで、各現在位置を示す媒介変数rの値と目標軌道の終点に相当する媒介変数r=1との差を算出し、その差についての相対比率が所定値となる位置にポイントをそれぞれ設定する。
たとえば、現在位置と終点との間に4つのサンプル点を設定する場合には、媒介変数rの差に対して、2/12,4/12,6/12,9/12に相当する媒介変数rの位置にそれぞれサンプル点を設定することが考えられる。具体的には、現在位置が媒介変数r=「0.4」に相当する位置であれば、終点における媒介変数r=「1.0」との差である「0.6」に対して、上述のような比率でサンプル点が設定される。この場合には、媒介変数r=「0.5」,「0.6」,「0.7」,「0.85」にそれぞれ対応する位置に、サンプル点が設定される。
代替の方法として、目標軌道における曲率が最大となる点を考慮して、サンプル点を設定してもよい。すなわち、目標軌道上において曲率が最大となる媒介変数rは、以下の式に従って算出される。
r=[√{(P1−P2)×P4+P3+(−P2−P1)×P3+P2}−P3+2×P2−P1]/(P4−3×P3+3×P2−P1)
したがって、この曲率が最大となる媒介変数rの位置を基準として、所定数のサンプル点が設定されてもよい。
<F.目標加速度の算出(ステップS10)>
次に、目標軌道上を移動中における目標加速度を算出する処理について説明する。
本実施の形態に従う制御ロジックにおいては、目標軌道の終点におけるTCP速度の目標値が与えられているので、各現在位置から当該TCP速度の目標値への速度変化(加速度)が線形的となるように、目標加速度が算出される。
図10は、本実施の形態に従う目標加速度の算出方法について説明するための図である。図10を参照して、ある時点における目標軌道上のTCP速度を現在速度Velとし、目標軌道の終点におけるTCP速度の目標値を最終目標速度vEndとすると、時間−TCP速度の座標において、現在速度Velと最終目標速度vEndとを直線的につなぐ加速度を目標加速度AccRefとする。言い換えれば、各制御周期において、現在速度Velを最終目標速度vEndまで一定レートで変化させるように、目標加速度AccRefが算出される。すなわち、目標加速度AccRefは、以下の式に従って算出される。
AccRef=(vEnd−Vel)/Tnec
ここで、時間Tnecは、推定された残距離lLeftだけ移動するために必要な時間であり、以下の式に従って算出される。
Tnec=2×lLeft/(Vel+vEnd)
したがって、これらの2式を組み合わせると、目標加速度AccRefは、以下の式に従って算出される。
AccRef=(vEnd−Vel)/(2×lLeft)
すなわち、現在速度Vel、最終目標速度vEnd、および推定された残距離lLeftに基づいて目標加速度AccRefが算出される。
<G.TCP速度の新たな目標値の算出(ステップS12)>
次に、各制御周期において、更新されるTCP速度の目標値(目標速度)を算出する処理について説明する。
すなわち、各制御周期において算出された目標加速度AccRefで、現在のTCP速度(現在速度Vel)を補正することで、次の制御周期におけるTCP速度の目標値(目標速度VelRef)が算出される。すなわち、目標速度VelRefは、以下の式に従って算出される。
VelRef=Vel+AccRef
<H.移動指令の出力(ステップS16)>
次に、目標速度VelRefを実現するために必要な移動すべき量を示す指令を出力する処理について説明する。ここで、目標速度VelRefは、可動機構4のアーム部分についての1制御周期内での軌道長の変化量ΔL(=移動距離/制御周期)に相当する。
図11は、本実施の形態に従うベジェ曲線およびその軌道長の特性を示す図である。図11(a)に示すようなベジェ曲線を目標軌道に設定した場合には、その目標軌道上の位置が媒介変数rによって定義されることになる。一方で、図11(b)に示すように、目標軌道の軌道長Lは、媒介変数rに関して非線形の関係を有している。
図12は、ベジェ曲線における媒介変数rの変位量と軌道長Lの変位量との関係を示す図である。図12に示すように、ある制御周期内において、可動機構4のアーム部分を目標軌道に沿って変化量ΔLだけ移動させた場合の媒介変数増分Δrは、rの値に依存して変化することになる。すなわち、媒介変数rと軌道長Lとの関係は非線形であるので、媒介変数増分Δrを一定値にしても、TCP速度(現在速度Vel)は一定値にはならない。
したがって、各制御周期において、次の制御周期までの変化量ΔLが算出されたとしても、目標軌道上のいずれの位置まで移動する必要があるかについては単純な計算では算出できないことになる。
そこで、本実施の形態に従う制御ロジックにおいては、媒介変数rの値に依存して、媒介変数増分Δrを逐次算出することで、目標軌道上における移動速度を制御する。より具体的には、以下に詳述するように、軌道長Lを媒介変数rについて偏微分して得られた値を用いて、非線形の関係を簡易的に線形化する。
図13は、本実施の形態に従う制御ロジックにおける軌道長の変化量ΔLに対する媒介変数増分Δrの算出方法について説明するための図である。
基本的には、図13(a)に示すように、ある媒介変数rにおける、媒介変数rに関する軌道長Lの傾きa(=dL/dr)を算出しておく。このとき、媒介変数rと軌道長Lとの関係が線形である(破線で示す特性)とすると、目標速度VelRefに対応する軌道長の変化量ΔLは、媒介変数増分Δr_linearに相当する。
一方、媒介変数rと軌道長Lとの本来の関係(非線形の関係)によれば、媒介変数増分Δr_linearに対応する軌道長の変化量は、目標速度VelRefと媒介変数増分Δr_linearで算出した時の移動長の行き過ぎ量との合計に相当する。
したがって、媒介変数rに関する軌道長Lの傾きa(=dL/dr)を用いて、目標速度VelRefを実現するために必要な媒介変数増分Δrは、媒介変数増分Δr_linearに軌道長Lの傾きaの逆数を乗じた値として算出することができる。
すなわち、媒介変数増分Δr=媒介変数増分Δr_linear×1/aとして算出される。
なお、軌道長Lの傾きa(=dL/dr)は、軌道長Lについての媒介変数増分Δrについての導関数(1次微分式)を予め保持しておき、この導関数を逐次算出することで得られる。
さらに、上述のような算出処理によって得られた媒介変数増分Δrに基づいて、次の制御周期における目標軌道上の目標位置を示す媒介変数rが更新される(r(t+1)=r(t)+Δr(t))。可動機構4のアーム部分がこの更新後の媒介変数rによって示される目標軌道上の位置(目標位置P(r(t+1)))に移動するように位置指令(目標位置)が与えられる。すなわち、新たに算出された位置に可動機構4のアーム部分を移動させるための溜りパルスがMCユニット24からモータドライバ31,32,33へ与えられる。
以上のように、可動機構4に与えられる移動指令は、移動速度の新たな目標値(目標速度VelRef)に対応して、可動機構4のアーム部分が移動すべき距離(軌道長の変化量ΔL)を算出し、可動機構4のアーム部分が移動すべき距離(軌道長の変化量ΔL)に対応して、目標軌道における可動機構4のアーム部分が移動すべき目標軌道上の位置(目標位置P(r))を算出し、可動機構4のアーム部分の移動すべき位置に対応して、複数の駆動軸の各々に対する移動指令(溜りパルス)として算出される。
<I.機能ブロック図>
次に、上述の一連の処理を実現するための機能ブロックについて説明する。
図14は、本実施の形態に従う制御ロジックを実現するための機能ブロックを示す模式図である。
図14を参照して、本実施の形態に従う制御ロジックは、Jerk処理モジュール301と、加速度処理モジュール302と、目標速度算出モジュール303と、遅延モジュール304と、媒介変数増分算出モジュール305と、傾き算出モジュール306と、媒介変数算出モジュール307と、ベジェ曲線算出モジュール308と、溜りパルス算出モジュール309とを含む。
Jerk処理モジュール301は、モータ41,42,43(図2)に与える制御指令により生じる加加速度(「Jerk」あるいは「躍度」とも称される。)が予め定められた制限値(Jerk制限値jMaxLim)を超過しないように制限する。すなわち、Jerk処理モジュール301は、目標加速度AccRefを算出するとともに、この算出した目標加速度AccRefと現在加速度Accとを比較することで、加加速度の大きさを評価する。
より具体的には、Jerk処理モジュール301には、現在加速度Acc、現在速度Vel、最終目標速度vEnd、(推定された)残距離lLeftが入力される。そして、Jerk処理モジュール301は、目標加速度AccRefをAccRef=(vEnd−Vel)/(2×lLeft)に従って算出する。続いて、この算出した目標加速度AccRefに対応する目標加加速度JerkRefをJerkRef=AccRef−Accに従って算出する。
続いて、Jerk処理モジュール301は、算出された目標加加速度JerkRefが予め定められたJerk制限値jMaxLimを超えているか否かを判断する。そして、Jerk処理モジュール301は、算出された目標加加速度JerkRefがJerk制限値jMaxLimを超えている場合には、目標加加速度JerkRefとしてJerk制限値jMaxLimの値を出力し、そうでなければ、算出された目標加加速度JerkRefの値をそのまま出力する。
加速度処理モジュール302は、モータ41,42,43(図2)に与える制御指令により生じる加速度が予め定められた制限値(加速度制限値aMaxLim)を超過しないように制限する。すなわち、加速度処理モジュール302は、目標加速度AccRefを算出するとともに、この算出した目標加速度AccRefの大きさを評価する。
より具体的には、加速度処理モジュール302には、現在加速度Accおよび目標加加速度JerkRefが入力される。そして、加速度処理モジュール302は、目標加速度AccRefをAccRef=Acc+JerkRefに従って算出する。続いて、加速度処理モジュール302は、算出された目標加速度AccRefが予め定められた加速度制限値aMaxLimを超えているか否かを判断する。この算出した目標加速度AccRefが加速度制限値aMaxLimを超えている場合には、目標加速度AccRefとして加速度制限値aMaxLimの値を出力し、そうでなければ、算出された加速度制限値aMaxLimの値をそのまま出力する。
目標速度算出モジュール303は、目標速度VelRefを算出する。より具体的には、目標速度算出モジュール303には、遅延モジュール304を通じて、直前の制御周期における目標速度VelRefが入力されるとともに、加速度処理モジュール302で算出された目標加速度AccRefが入力される。そして、目標速度算出モジュール303は、今回の制御周期における目標速度VelRef(t)をVelRef(t)=VelRef(t−1)+AccRefに従って算出する。
なお、目標速度算出モジュール303では、算出された目標速度VelRefに対する制限処理を行なう必要がない。なぜならば、目標速度VelRefの制限値は、最終目標速度vEndであり、この最終目標速度vEndを用いて目標加加速度JerkRefおよび目標加速度AccRefが算出されているからである。
媒介変数増分算出モジュール305は、目標速度算出モジュール303により算出された目標速度VelRef(軌道長の変化量ΔL)に対応する媒介変数増分Δrを算出する。この際、媒介変数rに関する軌道長Lの傾きa(=dL/dr)が必要となるので、媒介変数増分算出モジュール305により処理に同期して、傾き算出モジュール306が当該時点の媒介変数rに応じた、軌道長Lの傾きa(=dL/dr)を算出する。媒介変数増分算出モジュール305における詳細な処理については、図13を参照して説明したので、ここではその内容については繰返さない。
傾き算出モジュール306は、典型的には、予め設定されているベジェ曲線である目標位置P(r)に対応する軌道長Lの関数から算出される、媒介変数増分Δrについての導関数(1次微分式)を予め保持している。
媒介変数算出モジュール307には、媒介変数増分算出モジュール305において算出された媒介変数増分Δrが入力される。そして、媒介変数算出モジュール307は、今回の制御周期における媒介変数r(t)をr(t)=r(t−1)+AccRefに従って算出する。
ベジェ曲線算出モジュール308は、媒介変数算出モジュール307において算出された媒介変数rに基づいて、目標位置P(r)を算出する。すなわち、算出された目標位置P(r)は、可動機構4のアーム部分が移動すべき座標を示す。
溜りパルス算出モジュール309は、ベジェ曲線算出モジュール308により算出された目標位置P(r)に基づいて、モータ41,42,43がそれぞれ現制御周期内で移動すべき量を算出する。そして、溜りパルス算出モジュール309は、モータドライバ31,32,33のそれぞれへ与える溜りパルスP,P,Pの数を算出する。
<J.動作例>
次に、本実施の形態に従う制御ロジックによって得られる可動機構4の挙動の一例について説明する。
図15は、本実施の形態に従う制御ロジックによって得られる可動機構4の挙動例を示すタイムチャートである。図15(a)は、可動機構4のアーム部分の移動速度(TCP速度)の時間的変化の例を示し、図15(b)は、可動機構4のアーム部分の加速度の時間的変化の例を示す。
なお、ワークを切削加工するような処理では、ワーク2に接近する速度に比較して切削時の速度が相対的に低く設定されている場合が多い。そのため、図15(a)および図15(b)には、切削開始の前処理として、可動機構4のアーム部分のTCP速度が所定レート(加速度−Dec1)での減速を時刻t1から開始する例を示す。その後、時刻t2において、TCP速度が補間開始速度vStartまで低下したとする。この補間開始速度vStartは、加工対象のワークの材質などに応じて定められてもよい。
そして、時刻t2において目標軌道が生成されたとする。すなわち、時刻t2における可動機構4のアーム部分の位置が始点P1として決定されるとともに、この始点P1に対応して終点P4が決定される。すると、始点P1とコントロール点P2とからコントロールベクトル1が決定されるとともに、コントロール点P3と終点P4とからコントロールベクトル2が決定される。最終的に、これらのコントロールベクトル1および2からベジェ曲線、すなわち目標軌道が決定される(図8参照)。
時刻t2以降では、TCP速度が終点P4において最終目標速度vEndとなるように、TCP速度が徐々に変更される。なお、速度の連続性を維持するため、時刻t2における補間開始加速度aStartは、直前の加速度(−Dec1)とほぼ同様の大きさに維持されている。
上述したように、目標加速度AccRefは、各制御周期において推定される残距離lLeftに基づいて算出される。但し、移動開始直後では、補間開始速度vStartと最終目標速度vEndとの差が大きいため、加加速度についての制限(Jerk制限値jMaxLim)によってTCP速度の変化量が制約される。
しかしながら、時刻t3以降では、TCP速度(現在速度Vel)と最終目標速度vEndとの差が小さくなるため、各制御周期において算出される目標加速度AccRefに従って、TCP速度(現在速度Vel)が徐々に最終目標速度vEndに近付くことがわかる。そして、時刻t5において、可動機構4のアーム部分が終点に到達すると、そのときのTCP速度(現在速度Vel)が最終目標速度vEndに一致していることがわかる。
なお、図15(b)に示すように、時刻t3〜t5の期間においては、目標加速度AccRefが大きく変動することなく、徐々に予め定められた制限値(加速度制限値aMaxLim)に接近していることがわかる。
<K.全体処理フロー>
上述した本実施の形態に従う制御ロジックの全体処理手順としては、以下のようにまとめることができる。
図16は、本実施の形態に従う制御ロジックの全体処理手順を示すフローチャートである。なお、図16のフローチャートに含まれるステップのうち図4のフローチャートに含まれるステップと実質的に同じものについては、同一の参照番号を付与している。
また、図16に示す各ステップは制御装置1によって実行されるが、その実行主体は実装形態によって異なる。すなわち。主演算ユニット22(図2参照)がすべての処理を行なう場合もあるし、主演算ユニット22とMCユニット24(図2参照)が共同して処理を行なう場合もある。
図16を参照して、制御装置1は、パラメータ初期値および処理設定値を受付ける(ステップS1)。このパラメータ初期値には、補間開始速度vStart、最終目標速度vEnd、補間開始加速度aStart、加速度制限値aMaxLim、Jerk制限値jMaxLimなどが含まれる。また、処理設定値には、目標軌道を生成するための加工プログラムや、コントロール点の設定条件などが含まれる。続いて、可動機構4によるワーク2の切削が開始される(ステップS2)。
続いて、目標軌道の生成タイミングであるか否かが判断される(ステップS4)。目標軌道の生成タイミングでなければ(ステップS4においてNO)、ステップS4の処理が繰返される。これに対して、目標軌道の生成タイミングであれば(ステップS4においてYES)、始点および終点により定義される移動区間に対して目標軌道が生成される(ステップS6)。
この目標軌道の生成においては、始点P1の位置情報の取得(ステップS61)、始点P1に対応する終点P4の位置決定(ステップS62)、始点P1とコントロール点P2とによるコントロールベクトル1、および、コントロール点P3と終点P4とによるコントロールベクトル2の決定(ステップS63)、ならびに、コントロールベクトル1およびコントロールベクトル2に基づくベジェ曲線の決定(ステップS64)という処理が含まれる。
続いて、目標軌道における現在位置から終点までの残距離が推定される(ステップS8)。この残距離の推定においては、可動機構4のTCPの現在値(現在位置を示す情報)の取得(ステップS81)、目標軌道における現在位置から終点までの区間に対して予め定められた一定数のサンプル点の設定(ステップS82)、隣接するサンプル点の間の距離を算出(ステップS83)、各サンプル点の間の距離を合計することで残距離の算出(ステップS84)という処理が含まれる。
続いて、目標加速度が算出される(ステップS10)。この目標加速度の算出においては、現在速度Vel、最終目標速度vEnd、推定された残距離lLeftを用いて目標加速度AccRefの算出(ステップS101)、算出された目標加速度AccRefを用いて目標加加速度JerkRefの算出(ステップS102)、算出された目標加加速度JerkRefの制限処理(ステップS103)、制限処理後の目標加加速度JerkRefを用いて目標加速度AccRefの算出(ステップS104)、算出された目標加速度AccRefの制限処理(ステップS105)という処理が含まれる。
続いて、現在のTCP速度(現在速度Vel)をステップS10において算出した目標加速度(目標加速度AccRef)で補正することでTCP速度の新たな目標値(目標速度VelRef)が算出される(ステップS12)。
TCPが設定した目標軌道の終点に到達しているか否かが判断される(ステップS14)。TCPが設定した目標軌道の終点に到達していれば(ステップS14においてYES)、今回の目標軌道に基づくモーション制御は終了する。これに対して、TCPが設定した目標軌道の終点に到達していなければ(ステップS14においてNO)、可動機構4の可動部が1制御周期内に移動すべき量を示す指令が出力される(ステップS16)。
この指令の出力処理においては、媒介変数rと軌道長Lとが線形であると仮定して、算出された目標速度VelRefに相当する軌道長の変化量ΔLに対応する媒介変数増分Δr_linearの算出(図13参照)(ステップS161)、媒介変数rに関する軌道長Lの傾きa(=dL/dr)の算出(ステップS162)、媒介変数増分Δr_linearに軌道長Lの傾きaの逆数を乗じることで媒介変数増分Δrの算出(ステップS163)、算出された媒介変数増分Δrを用いて今回の制御周期における媒介変数rの算出(ステップS164)、算出された媒介変数rを用いた目標位置P(r)の算出(ステップS165)、算出された目標位置P(r)を用いた現制御周期内で移動すべき量の算出(ステップS166)、モータドライバ31,32,33のそれぞれへ与えるべき溜りパルスP,P,Pの数の算出(ステップS167)、算出された数の溜りパルスP,P,PのMCユニット24からモータドライバ31,32,33への出力(ステップS168)という処理が含まれる。
そして、次の制御周期まで待機し(ステップS18)、ステップS8以下の処理が繰返される。
なお、ステップS16の処理において、モータ41,42,43に設けられたサーボモータの回転位置を検出するエンコーダから現実に生じた加速度を算出するとともに、目標加速度(目標加速度AccRef)との差を加速度誤差として評価し、この加速度誤差を次の制御周期における処理に反映してもよい。これにより、過負荷などでモータが指令に追従しない場合であっても、フィードバック的にその挙動を補正することができる。
<L.変形例>
(l1:目標軌道上での移動速度を一定に維持できる範囲を最大化する処理例)
対象のアプリケーションによっては、目標軌道を移動中(典型的には、切削中)のTCP速度を可能な限り一定化した場合も存在する。このようにTCP速度を一定値に維持することで、加工面の仕上がり品質を向上させることができる。
この変形例に従う制御ロジックでは、加速度制限値によって制限された状況下において、目標軌道の終点において最終目標速度に到達することができる範囲まで、TCP速度を補間速度Vintに維持する。すなわち、TCP速度を補間速度Vintまで低下させた後、目標軌道の終点において最終目標速度vEndに到達するためにTCP速度の増加を開始するタイミングを可能な限り遅くする。
図17は、本実施の形態の変形例に従う制御ロジックによって得られる可動機構4のTCP速度を示すタイムチャートである。図17を参照して、まず、処理が開始されると、現在速度Vel(開始時の現在速度Vel1)を減速度制限Dec1の制限下で補間速度Vintまで低減させる。このとき、目標加速度AccRefは、以下のような式に従って算出される。
AccRef=(Vint−Vel)
但し、AccRef<Dec1であれば、AccRef=Dec1
したがって、現在速度Velが補間速度Vintまで低下した後は、目標加速度AccRefがゼロとなるので、現在速度Velは補間速度Vintを維持する。
また、速度変更開始距離Lappが以下のような式に従って予め算出される。但し、Acc2は、加速度制限値である。
Lapp=abs((vEnd−Vel)/2×lLeft)/(2×Acc2)
そして、各制御周期において、残距離lLeftが逐次推定されるとともに、この推定される残距離lLeftが速度変更開始距離Lappと略一致すると、TCP速度は加速度制限値Acc2の制限下で最終目標速度vEndまで増加する。
このような処理を採用することで、TCP速度を補間速度Vintに維持できる区間を最大化できるため、ワークの加工面の品質などを向上させることができる。
<M.作用効果>
本発明の実施の形態によれば、予め設定された目標軌道の終点におけるTCP速度が最終目標速度と一致するように、現在速度をなるべく変動の少ない加速度で加減速させる。すなわち、TCP速度が最終目標速度に向けて滑らかに変化するとともに、後続の軌道における目標速度との連続性も維持できる。これにより、仕上げ面の均一性を向上させることができる。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
1 制御装置、2 ワーク、3 メジャー、4 可動機構、5 スイッチ、21 電源ユニット、22 主演算ユニット、23 IOユニット、24 MCユニット、25 バックプレーン、31,32,33 モータドライバ、41,42,43 モータ、60 通信線、221 マイクロプロセッサ、223 バッファメモリ、225 通信インターフェイス、226 ユーザメモリ、231 処理回路、232,243 入力回路、233,244 出力回路、242 コントローラインターフェイス、301 Jerk処理モジュール、302 加速度処理モジュール、303 目標速度算出モジュール、304 遅延モジュール、305 媒介変数増分算出モジュール、306 傾き算出モジュール、307 媒介変数算出モジュール、308 ベジェ曲線算出モジュール、309 溜りパルス算出モジュール、SYS システム。

Claims (12)

  1. 複数の駆動軸により移動可能な可動部を有する装置を制御するための制御装置であって、
    始点および終点により定義される移動区間に対して目標軌道を生成する目標軌道生成手段と、
    前記目標軌道における現在位置から前記終点までの残距離を推定する残距離推定手段と、
    前記可動部を前記残距離移動させた場合に前記可動部の速度が現在速度から目標速度にまで変化するような加速度を算出する加速度算出手段と、
    在の移動速度を前記算出した加速度で補正することで移動速度の新たな目標値を算出する移動速度更新手段とを備える、制御装置。
  2. 前記加速度算出手段は、前記現在の移動速度を前記目標速度まで一定の加速度で変化させるように、前記加速度を算出する、請求項1に記載の制御装置。
  3. 前記加速度算出手段は、各制御周期において前記加速度を算出する、請求項1または2に記載の制御装置。
  4. 前記残距離推定手段は、前記目標軌道における前記現在位置から前記終点までの区間に対して予め定められた数のサンプル点を設定するとともに、設定したサンプル点を補間することで前記残距離を推定する、請求項1〜3のいずれか1項に記載の制御装置。
  5. 前記残距離推定手段は、前記目標軌道における前記現在位置から前記終点までの区間について、前記現在位置に遠い区間に比較して前記現在位置に近い区間ほど、前記サンプル点の間隔がより密になるように、前記サンプル点を設定する、請求項4に記載の制御装置。
  6. 前記目標軌道は、媒介変数を含む関数の形で定義される、請求項1〜5のいずれか1項に記載の制御装置。
  7. 前記移動速度更新手段によって算出された前記移動速度の新たな目標値となるように、前記可動部が1制御周期内に移動すべき量を示す指令を出力する移動指令手段をさらに備え、
    前記移動指令手段は、
    前記移動速度の新たな目標値に対応して、前記可動部が移動すべき距離を算出する手段と、
    前記可動部が移動すべき距離に対応して、前記目標軌道における前記可動部の移動すべき位置を算出する手段と、
    前記可動部の移動すべき位置に対応して、前記複数の駆動軸の各々に対する移動指令を算出する手段とを含む、請求項1〜4のいずれか1項に記載の制御装置。
  8. 前記目標軌道は、ベジェ曲線により定義される、請求項6または7に記載の制御装置。
  9. 前記目標軌道生成手段は、外部入力される信号に応答して、前記目標軌道を生成する、請求項1に記載の制御装置。
  10. 前記移動速度更新手段は、加速度および/または加加速度の変化量が予め定められた制限を超過しないように、前記移動速度の新たな目標値を算出する、請求項1に記載の制御装置。
  11. 制御システムであって、
    複数の駆動軸により移動可能な可動部を有する可動機構と、
    前記可動機構を駆動するためのドライバと、
    前記ドライバに対して制御指令を与える制御装置とを備え、
    前記制御装置は、
    始点および終点により定義される移動区間に対して目標軌道を生成する目標軌道生成手段と、
    前記目標軌道における現在位置から前記終点までの残距離を推定する残距離推定手段と、
    前記可動部を前記残距離移動させた場合に前記可動部の速度が現在速度から目標速度にまで変化するような加速度を算出する加速度算出手段と、
    在の移動速度を前記算出した加速度で補正することで移動速度の新たな目標値を算出する移動速度更新手段とを含む、制御システム。
  12. 複数の駆動軸により移動可能な可動部を有する装置を制御するための制御方法であって、
    始点および終点により定義される移動区間に対して目標軌道を生成するステップと、
    前記目標軌道における現在位置から前記終点までの残距離を推定するステップと、
    前記可動部を前記残距離移動させた場合に前記可動部の速度が現在速度から目標速度にまで変化するような加速度を算出するステップと、
    在の移動速度を前記算出した加速度で補正することで移動速度の新たな目標値を算出するステップとを備える、制御方法。
JP2010230342A 2010-10-13 2010-10-13 制御装置、制御システムおよび制御方法 Active JP5146512B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2010230342A JP5146512B2 (ja) 2010-10-13 2010-10-13 制御装置、制御システムおよび制御方法
EP11832309.6A EP2629163B1 (en) 2010-10-13 2011-03-16 Control device, control system and control method
CN201180049705.7A CN103180791B (zh) 2010-10-13 2011-03-16 控制装置、控制***及控制方法
PCT/JP2011/056227 WO2012049866A1 (ja) 2010-10-13 2011-03-16 制御装置、制御システムおよび制御方法
US13/877,930 US9606524B2 (en) 2010-10-13 2011-03-16 Control apparatus, control system and control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010230342A JP5146512B2 (ja) 2010-10-13 2010-10-13 制御装置、制御システムおよび制御方法

Publications (3)

Publication Number Publication Date
JP2012083982A JP2012083982A (ja) 2012-04-26
JP2012083982A5 JP2012083982A5 (ja) 2012-10-25
JP5146512B2 true JP5146512B2 (ja) 2013-02-20

Family

ID=45938106

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010230342A Active JP5146512B2 (ja) 2010-10-13 2010-10-13 制御装置、制御システムおよび制御方法

Country Status (5)

Country Link
US (1) US9606524B2 (ja)
EP (1) EP2629163B1 (ja)
JP (1) JP5146512B2 (ja)
CN (1) CN103180791B (ja)
WO (1) WO2012049866A1 (ja)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6128767B2 (ja) * 2012-07-05 2017-05-17 キヤノン株式会社 ロボット制御装置、及びロボット制御方法
CN103568054B (zh) * 2013-10-29 2016-08-17 南通恒康数控机械股份有限公司 一种海绵环刀切割机切割时的软件限位控制方法
JP5908544B2 (ja) 2014-08-11 2016-04-26 ファナック株式会社 駆動軸のジャークを低下させるロボットプログラムを生成するロボットプログラム生成装置
JP6133825B2 (ja) * 2014-08-28 2017-05-24 ファナック株式会社 反転時の最適な加速度を算出する数値制御装置
CN105511337B (zh) * 2014-10-15 2018-11-09 关隆股份有限公司 无线***的近端与远程控制协调方法
JP6321605B2 (ja) * 2015-10-30 2018-05-09 ファナック株式会社 曲率と曲率変化量による速度制御を行う数値制御装置
KR20190051896A (ko) 2016-04-27 2019-05-15 시멘 샬레 스코그스루드 모션 제어 장치 및 방법
US10611024B2 (en) * 2016-04-27 2020-04-07 Polarworks As Method of iterative motion control
FR3051782B1 (fr) * 2016-05-24 2018-07-06 Fmc Technologies Sa Dispositif de commande de deplacement, procede et dispositif d'acquisition et de calcul pour celui-ci, ainsi que bras articule de chargement de fluide le comportant.
WO2018068302A1 (zh) * 2016-10-14 2018-04-19 深圳配天智能技术研究院有限公司 一种轨迹速度规划方法及轨迹速度规划装置
CN106227152A (zh) * 2016-10-17 2016-12-14 合肥工业大学 一种cnc加工的平滑过渡方法及其平滑过渡装置
WO2018119745A1 (zh) * 2016-12-28 2018-07-05 深圳配天智能技术研究院有限公司 机器人运动控制方法及相关装置
US11008039B2 (en) * 2017-04-12 2021-05-18 Toyota Jidosha Kabushiki Kaisha Lane change assist apparatus for vehicle
CN107031741B (zh) * 2017-04-24 2019-06-04 北京京东尚科信息技术有限公司 车***姿校正方法及装置
JP6881174B2 (ja) * 2017-09-13 2021-06-02 オムロン株式会社 制御装置および制御方法
JP6900863B2 (ja) * 2017-09-22 2021-07-07 オムロン株式会社 制御装置、制御方法および制御プログラム
CN108388206B (zh) * 2018-03-07 2020-11-24 深圳市汇川技术股份有限公司 进给速度实时动态规划方法及***
TWI662781B (zh) * 2018-03-29 2019-06-11 東元電機股份有限公司 馬達控制系統及其方法
US20210318688A1 (en) * 2018-09-05 2021-10-14 Nec Corporation Motion control apparatus, motion control method, nontransitory computer readable medium, and motion control system
CN111722640B (zh) * 2019-03-21 2024-04-09 北京京东乾石科技有限公司 无人机的控制方法、装置和计算机可读存储介质
JP6899099B2 (ja) * 2019-04-22 2021-07-07 株式会社安川電機 機械制御システム、機械制御装置、及び制振指令生成方法
JP6801802B1 (ja) * 2020-03-11 2020-12-16 オムロン株式会社 コントローラシステムおよびその制御方法
JP6863497B1 (ja) * 2020-03-11 2021-04-21 オムロン株式会社 コントローラシステムおよびその制御方法
US20220186469A1 (en) * 2020-12-14 2022-06-16 Cnh Industrial America Llc System and method for controlling implement operation of a work vehicle using a speed-based parameter
JP7276359B2 (ja) * 2021-01-07 2023-05-18 株式会社安川電機 動作指令生成装置、機構制御システム、コンピュータプログラム、動作指令生成方法及び機構制御方法
JP2022178404A (ja) 2021-05-20 2022-12-02 オムロン株式会社 制御システム、制御方法及びプログラム
CN114019904B (zh) * 2021-11-09 2024-05-17 深圳市英威腾电气股份有限公司 一种运动控制方法、***及装置
CN114657688B (zh) * 2022-02-28 2023-09-29 浙江大豪科技有限公司 横织机的控制方法、装置、设备及介质
CN115314534A (zh) * 2022-07-12 2022-11-08 埃夫特智能装备股份有限公司 一种基于EtherCAT通信协议的实时性优化模拟机器人***
CN117555288B (zh) * 2024-01-09 2024-04-05 山东大学 基于弧长预测与迭代修调的样条曲线插补方法及***

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES364521A1 (es) 1968-03-12 1971-03-01 Kautex-Werk Reinold Hagen Un dispositivo para la fabricacion de cuerpos huecos de material sintetico termoplástico
JPS61156309A (ja) * 1984-12-27 1986-07-16 Toshiba Mach Co Ltd 速度段差平滑機能を備えた数値制御装置
JPH01147610A (ja) 1987-12-03 1989-06-09 Fanuc Ltd 数値制御装置
JP3242162B2 (ja) 1992-08-21 2001-12-25 日本板硝子株式会社 Nc加工法
JP3068989B2 (ja) 1993-08-31 2000-07-24 三菱電機株式会社 数値制御装置
JPH07104824A (ja) * 1993-09-29 1995-04-21 Yaskawa Electric Corp ロボット制御装置
JPH07210233A (ja) * 1994-01-27 1995-08-11 Matsushita Electric Ind Co Ltd ロボットの軌道の補間方法と補間装置
US5740327A (en) * 1994-12-27 1998-04-14 Nec Corporation Method of and apparatus for robot tip trajectory control
DE59501185D1 (de) * 1995-10-10 1998-02-05 Siemens Ag Taktsynchrone Bewegungsführung in zeitdiskreten Abtastsystemen
EP0858626B1 (en) 1996-09-02 2002-05-02 Koninklijke Philips Electronics N.V. Control by means of a set-point generator
JPH11149306A (ja) * 1997-11-14 1999-06-02 Fanuc Ltd 加工機の制御装置
JPH11179685A (ja) * 1997-12-19 1999-07-06 Yaskawa Electric Corp 産業用ロボットの制御方法
JP4085418B2 (ja) 1998-11-06 2008-05-14 株式会社安川電機 曲線補間加減速制御方法
JP2000163114A (ja) 1998-11-26 2000-06-16 Yaskawa Electric Corp 補間曲線内加減速処理方法
JP2003015714A (ja) * 2001-06-29 2003-01-17 Toshiba Tungaloy Co Ltd 数値制御工作機械
JP2006072598A (ja) * 2004-09-01 2006-03-16 Yaskawa Electric Corp サーボ制御装置およびサーボ制御方法
TW200925946A (en) 2007-07-06 2009-06-16 Sony Corp Input device, controller, control system, control method, and hand-held device
US7919940B2 (en) * 2007-10-21 2011-04-05 Ge Intelligent Platforms, Inc. System and method for jerk limited trajectory planning for a path planner

Also Published As

Publication number Publication date
CN103180791B (zh) 2017-03-01
US9606524B2 (en) 2017-03-28
CN103180791A (zh) 2013-06-26
EP2629163A4 (en) 2015-05-20
EP2629163B1 (en) 2019-12-04
JP2012083982A (ja) 2012-04-26
WO2012049866A1 (ja) 2012-04-19
EP2629163A1 (en) 2013-08-21
US20130197688A1 (en) 2013-08-01

Similar Documents

Publication Publication Date Title
JP5146512B2 (ja) 制御装置、制御システムおよび制御方法
Erkorkmaz et al. High speed CNC system design. Part I: jerk limited trajectory generation and quintic spline interpolation
CN109725600B (zh) 后处理器装置、加工程序生成方法、cnc加工***及计算机可读信息记录介质
Zhong et al. A real-time interpolator for parametric curves
WO2013140679A1 (ja) 軌跡制御装置
KR100284668B1 (ko) 수치제어장치
US20190086898A1 (en) Software module, precision machine, method and component
CN109834714B (zh) 一种用于多机器人的轨迹控制***与方法
JP5331068B2 (ja) 数値制御装置
WO2008053601A1 (fr) Dispositif de contrôle de travail et son programme
US11868115B2 (en) Operating an at least two-axle machine tool
JPH0378006A (ja) 数値制御装置の加減速制御方法
EP3304228B1 (en) Robot system for synchronizing the movement of the robot arm
JPH0354610A (ja) インボリュート補間誤差補正方式
WO2022138843A1 (ja) 数値制御装置
JP7469574B1 (ja) パラメータ調整装置、及びコンピュータ読み取り可能な記録媒体
WO2022264338A1 (ja) 制御装置、干渉チェック装置、及び制御システム
CN109884982B (zh) 数值控制装置
JP3164512B2 (ja) 数値制御装置
Li et al. Driving force constraint corner smoothing method for high-speed machine tools
JP2000347715A (ja) 数値制御装置
Breaz et al. Studying the behavior of CNC laser cutting machines in the contouring regime
JPS63126008A (ja) 多軸サーボ機構の定速度円弧軌跡制御装置
Liaomo et al. Integration of the five-axis tool center point control function in CNC system
CN112114558A (zh) 数值控制装置、cnc机床、数值控制方法以及记录有数值控制用程序的计算机可读介质

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120911

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121112

R150 Certificate of patent or registration of utility model

Ref document number: 5146512

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151207

Year of fee payment: 3