JP6922829B2 - 制御システム、制御方法、および制御プログラム - Google Patents

制御システム、制御方法、および制御プログラム Download PDF

Info

Publication number
JP6922829B2
JP6922829B2 JP2018085123A JP2018085123A JP6922829B2 JP 6922829 B2 JP6922829 B2 JP 6922829B2 JP 2018085123 A JP2018085123 A JP 2018085123A JP 2018085123 A JP2018085123 A JP 2018085123A JP 6922829 B2 JP6922829 B2 JP 6922829B2
Authority
JP
Japan
Prior art keywords
control
control parameter
unit
feedback
adjusting
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
JP2018085123A
Other languages
English (en)
Other versions
JP2019188551A (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 JP2018085123A priority Critical patent/JP6922829B2/ja
Priority to KR1020207026085A priority patent/KR102612470B1/ko
Priority to CN201980018736.2A priority patent/CN111868658A/zh
Priority to PCT/JP2019/014129 priority patent/WO2019208109A1/ja
Publication of JP2019188551A publication Critical patent/JP2019188551A/ja
Application granted granted Critical
Publication of JP6922829B2 publication Critical patent/JP6922829B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D3/00Control of position or direction
    • G05D3/12Control of position or direction using feedback

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)
  • Control Of Position Or Direction (AREA)
  • Feedback Control In General (AREA)
  • Studio Devices (AREA)

Description

本開示は、視覚センサによって計測されたワークの位置に基づいて、ワークの位置決めを行なうための技術に関する。
FA(ファクトリー オートメーション)において、ワークなどの対象物の位置を目標位置に合わせる技術(位置決め技術)が各種実用化されている。この際、対象物の位置と目標位置との偏差(距離)を計測する方法として、視覚センサによって撮像された画像を用いる方法がある。
特開2017−24134号公報(特許文献1)には、可動台と、可動台を移動させる移動機構と、可動台に載置されたワークを繰り返し撮像し、当該ワークの位置を繰り返し検出する視覚センサとを備えるワーク位置決め装置が開示されている。ワーク位置決め装置は、視覚センサによって位置が検出されるごとに、検出された位置と目標位置との差を算出し、当該差が許容範囲内であると判定されたときに、可動台の移動を停止する。ワーク位置決め装置は、可動台の移動停止後に視覚センサによって検出された位置と目標位置との差を算出し、算出された差が許容範囲内であるか否かを判定する。差が許容範囲外であると判定されると、当該差を小さくする可動台の移動方向が決定され、決定された移動方向へ可動台を移動させるように、移動機構が制御される。
特開2017−24134号公報
視覚センサによるワークの実位置の計測処理と、計測された実位置を目標位置に合わせる位置合わせ処理とを繰り返して行なう場合、実位置から目標位置までの必要移動距離に応じて移動機構に対する移動指令を変えるフィードバック制御が有効である。
フィードバック制御の一例として、比例制御(すなわち、P制御)が知られている。比例制御では、必要移動量に比例ゲインを乗じた値が移動指令となる。比例ゲインが小さ過ぎると、ワークが目標位置に到達するまでの時間(以下、「アライメント時間」ともいう。)が長くなる。一方で、比例ゲインが大き過ぎると、ワークが目標位置を超えるオーバーシュートが生じたり、オーバーシュートとアンダーシュートとが繰り返される振動が生じたりする。その結果、アライメント時間が長くなる。
したがって、アライメント時間を短縮するためには、フィードバック制御の制御パラメータを最適化する必要がある。しかしながら、最適な制御パラメータを設定するには経験が必要であり、特に、経験の少ないユーザにとってはパラメータ設定に工数がかかる。
本開示は上述のような問題点を解決するためになされたものであって、ある局面における目的は、フィードバック制御に関する制御パラメータの調整工数を削減することが可能な制御システムを提供することである。他の局面における目的は、フィードバック制御に関する制御パラメータの調整工数を削減することが可能な制御方法を提供することである。他の局面における目的は、フィードバック制御に関する制御パラメータの調整工数を削減することが可能な制御プログラムを提供することである。
本開示の一例では、制御システムは、対象物を移動させるための移動機構と、撮像指示を受け付けたことに基づいて上記対象物を撮像し、撮像により得られた画像から上記対象物の実位置を計測するための視覚センサと、上記撮像指示が上記視覚センサに出力される間隔よりも短い予め定められた制御周期ごとに上記移動機構の位置に関する位置関連情報を検出するための検出部と、上記実位置と上記位置関連情報とに基づいて、現時点における上記対象物の推定位置を上記制御周期ごとに決定するための位置決定部と、設定されている制御パラメータに従って、上記推定位置を上記対象物の目標位置に合わせるための移動指令を上記制御周期ごとに生成し、当該移動指令を上記制御周期ごとに上記移動機構に出力するフィードバック制御部と、予め決められた移動指令を上記移動機構に順次出力して上記検出部から得られるフィードバック値としての位置関連情報の推移に基づいて、上記制御パラメータを調整するための調整部とを備える。
この開示によれば、フィードバック制御に関する制御パラメータが自動で調整される。これにより、制御システムは、フィードバック制御に関する制御パラメータの調整工数を削減することができる。
本開示の一例では、制御システムは、対象物を移動させるための移動機構と、撮像指示を受け付けたことに基づいて上記対象物を撮像し、撮像により得られた画像から上記対象物の実位置を計測するための視覚センサと、上記撮像指示が上記視覚センサに出力される間隔よりも短い予め決められた制御周期ごとに、所定の制御パラメータに従って、上記実位置を上記対象物の目標位置に合わせるための移動指令を生成し、当該移動指令を上記移動機構に出力するフィードバック制御部と、予め決められた移動指令を上記移動機構に順次出力して上記視覚センサから得られるフィードバック値としての実位置の推移に基づいて、上記制御パラメータを調整するための調整部とを備える。
この開示によれば、フィードバック制御に関する制御パラメータが自動で調整される。これにより、制御システムは、フィードバック制御に関する制御パラメータの調整工数を削減することができる。
本開示の一例では、上記調整部は、上記推移に基づいて決定された上記制御パラメータの値を基準として、上記フィードバック制御部に設定され得る複数の制御パラメータ候補を生成し、上記複数の制御パラメータ候補の各々を上記フィードバック制御部に順次設定するとともに、各制御パラメータ候補について、上記対象物を所定位置から上記目標位置に移動するまでに要したアライメント時間を計測し、上記複数の制御パラメータ候補の内、上記アライメント時間が最短となる制御パラメータ候補を最適化結果としての上記制御パラメータとして選択する。
この開示によれば、制御システムは、フィードバック制御に関する制御パラメータをさらに最適化することができる。
本開示の一例では、上記調整部は、予め決められた複数の倍率のそれぞれを上記基準の制御パラメータに乗算することで、上記複数の制御パラメータ候補を生成する。
この開示によれば、制御システムは、基準の制御パラメータから容易に制御パラメータ候補を生成することができる。
本開示の一例では、上記調整部は、上記推移における単位時間当たりの最大変化率を算出し、上記推移において上記最大変化率が表れる時点と、上記最大変化率とに基づいて、上記フィードバック制御部による制御対象の遅れ時間を算出し、上記遅れ時間に基づいて、上記制御パラメータを決定する。
この開示によれば、上記制御パラメータが遅れ時間に基づいて決定されることで、制御システムは、フィードバック制御に関する制御パラメータをより最適に調整することができる。
本開示の一例では、上記制御パラメータは、上記フィードバック制御部の比例制御に用いられる比例ゲインを含む。
この開示によれば、比例ゲインが自動で調整される。これにより、制御システムは、比例ゲインの調整工数を削減することができる。
本開示の他の例では、対象物を移動させるための移動機構の制御方法は、撮像指示を視覚センサに出力することで上記対象物を撮像し、撮像により得られた画像から上記対象物の実位置を上記視覚センサに計測させるステップと、上記撮像指示が上記視覚センサに出力される間隔よりも短い予め定められた制御周期ごとに上記移動機構の位置に関する位置関連情報を検出するステップと、上記実位置と上記位置関連情報とに基づいて、現時点における上記対象物の推定位置を上記制御周期ごとに決定するステップと、設定されている制御パラメータに従って、上記推定位置を上記対象物の目標位置に合わせるための移動指令を上記制御周期ごとに生成し、当該移動指令を上記制御周期ごとに上記移動機構に出力するステップと、予め決められた移動指令を上記移動機構に順次出力して上記検出するステップで得られるフィードバック値としての位置関連情報の推移に基づいて、上記制御パラメータを調整するステップとを備える。
この開示によれば、フィードバック制御に関する制御パラメータが自動で調整される。これにより、制御システムは、フィードバック制御に関する制御パラメータの調整工数を削減することができる。
本開示の一例では、対象物を移動させるための移動機構の制御プログラムは、上記移動機構を制御するためのコントローラに、撮像指示を視覚センサに出力することで上記対象物を撮像し、撮像により得られた画像から上記対象物の実位置を上記視覚センサに計測させるステップと、上記撮像指示が上記視覚センサに出力される間隔よりも短い予め定められた制御周期ごとに上記移動機構の位置に関する位置関連情報を検出するステップと、上記実位置と上記位置関連情報とに基づいて、現時点における上記対象物の推定位置を上記制御周期ごとに決定するステップと、設定されている制御パラメータに従って、上記推定位置を上記対象物の目標位置に合わせるための移動指令を上記制御周期ごとに生成し、当該移動指令を上記制御周期ごとに上記移動機構に出力するステップと、予め決められた移動指令を上記移動機構に順次出力して上記検出するステップで得られるフィードバック値としての位置関連情報の推移に基づいて、上記制御パラメータを調整するステップとを実行させる。
この開示によれば、フィードバック制御に関する制御パラメータが自動で調整される。これにより、制御システムは、フィードバック制御に関する制御パラメータの調整工数を削減することができる。
ある局面において、フィードバック制御に関する制御パラメータの調整工数を削減することができる。
実施の形態に従う制御システムの概要を示す模式図である。 変形例に従う制御システムの概要を示す模式図である。 実施の形態に従う制御システムの装置構成の一例を示す図である。 実施の形態に従う視覚センサを構成する画像処理装置のハードウェア構成の一例を示す模式図である。 実施の形態に従うコントローラのハードウェア構成を示す模式図である。 制御パラメータの調整処理の流れを表わすフローチャートである。 移動機構に入力された移動指令と、その応答として移動機構から出力されるフィードバック値との関係を時間軸上に示す図である。 制御パラメータの最適化処理の流れ表わすフローチャートである。 図1に示される位置決定部による推定位置の決定処理を表わすフローチャートである。
以下、図面を参照しつつ、本発明に従う各実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、これらについての詳細な説明は繰り返さない。
<A.適用例1>
まず、図1を参照して、本発明が適用される場面の一例について説明する。図1は、本実施の形態に従う制御システム1の概要を示す模式図である。
制御システム1は、画像処理を用いてアライメントを行なう。アライメントは、典型的には、工業製品の製造過程などにおいて、対象物(以下、「ワークW」ともいう。)を生産ラインの本来の位置に配置する処理などを意味する。このようなアライメントの一例として、制御システム1は、液晶パネルの生産ラインにおいて、ガラス基板に回路パターンの焼付処理(露光処理)前に、露光マスクに対するガラス基板の位置決めを行なう。
制御システム1は、たとえば、視覚センサ50と、コントローラ200と、移動機構400と、エンコーダ450とを含む。視覚センサ50は、たとえば、撮像部52と、画像処理部54とを含む。移動機構400は、たとえば、サーボドライバ402と、サーボモータ410と、ステージ420とで構成されている。
撮像部52は、撮像視野に存在する被写体を撮像して画像データを生成する撮像処理を行なうものであり、ステージ420に載置されるワークWを撮像する。撮像部52は、コントローラ200からの撮像トリガTRに応じて撮像を行なう。撮像部52によって生成された画像データは、画像処理部54に順次出力される。画像処理部54は、撮像部52から得られた画像データに対して画像解析を行ない、ワークWの実位置PVを計測する。実位置PVは、計測される度にコントローラ200に出力される。
コントローラ200は、たとえばPLC(プログラマブル ロジック コントローラ)であり、各種のFA制御を行なう。コントローラ200は、機能構成の一例として、位置決定部252と、フィードバック制御部254と、調整部264とを含む。
位置決定部252は、視覚センサ50によって計測された実位置PVと、視覚センサ50による撮像間隔Tbよりも短い制御周期Tsごとに得られるエンコーダ値PV(位置関連情報)とに基づいて、制御周期TsごとにワークWの位置(以下、「推定位置PV」ともいう。)を推定する。一例として、撮像周期Tbは、撮像状況などに応じて変動し、たとえば約60msである。制御周期Tsは、固定であり、たとえば1msである。推定位置PVは、制御周期Tsごとにフィードバック制御部254に出力される。
フィードバック制御部254は、制御パラメータ262に従って、推定位置PVを目標位置SVに合わせるための移動指令MVを制御周期Tsごとに生成し、制御周期Tsごとに移動指令MVをサーボドライバ402に出力する。移動指令MVは、たとえば、サーボドライバ402に対する指令位置、指令速度、または指令トルクのいずれかである。
ある局面において、目標位置SPは、生産工程ごとに予め決められており、現在の生産工程に応じて順次切り替えられる。他の局面において、目標位置SPは、視覚センサ50が所定の画像処理を行なうことにより画像内から検出される。この場合、視覚センサ50は、予め定められたマークを画像から検出し、当該マークを目標位置SPとして認識する。
フィードバック制御部254によるフィードバック制御は、たとえば、PID(Proportional Integral Differential)制御、PI制御、PD制御、またはP制御により実現される。図1の例では、P制御を行なうフィードバック制御部254が示されている。フィードバック制御部254は、減算部256と、乗算部258とで構成されている。
減算部256は、目標位置SPから、位置決定部252によって決定された推定位置PVを減算し、その減算結果を乗算部258に出力する。乗算部258は、減算部256による減算結果を、制御パラメータ262に規定される比例ゲインKp倍に増幅/減衰する。乗算部258による乗算結果は、積分処理された上で位置指令としてサーボドライバ402に出力される。あるいは、乗算部258による乗算結果は、そのまま速度指令としてサーボドライバ402に出力される。
サーボドライバ402は、制御周期Tsごとに受ける移動指令MVに従って、サーボモータ410を駆動する。より具体的には、サーボドライバ402は、制御周期Tsごとにエンコーダ450(検出部)からエンコーダ値PVを取得する。サーボドライバ402は、エンコーダ値PVにより示される速度/位置を、移動指令MVにより示される速度/位置に合わせるように、サーボモータ410をフィードバック制御する。一例として、サーボドライバ402によるフィードバック制御は、PID制御、PI制御、PD制御、またはP制御により実現される。
調整部264は、フィードバック制御部254に関する制御パラメータ262を調整する。より具体的には、コントローラ200は、動作モードとして、通常の制御モードと、制御パラメータ262の調整モードとを有する。動作モードが通常の制御モードに設定された場合、フィードバック制御部254とサーボドライバ402とが接続されるようにスイッチSWが切り替えられる。一方で、動作モードが調整モードに設定された場合には、調整部264とサーボドライバ402とが接続されるようにスイッチSWが切り替えられる。
調整モードにおいて、調整部264は、予め決められた移動指令MVを移動機構400に順次出力し、エンコーダ450(検出部)からエンコーダ値PVをフィードバック値として順次取得する。その後、調整部264は、取得されたエンコーダ値PVの推移に基づいて制御パラメータ262を調整する。制御パラメータ262の調整方法の詳細については後述する。このように、制御パラメータ262が自動で調整されることで、制御パラメータ262の調整工数が削減される。
なお、図1には、位置決定部252、フィードバック制御部254、調整部264、サーボドライバ402、サーボモータ410、およびエンコーダ450のコンポーネント群が1つしか示されていないが、これらのコンポーネント群は、ステージ420を駆動する軸数の分だけ設けられる。各コンポーネント群は、ステージ420の1つの軸方向における制御を担うことになる。この場合、視覚センサ50によって計測された実位置PVは、各軸方向における実位置に分解され、分解後の各実位置が対応のコンポーネント群に出力されることとなる。
<B.適用例2>
次に、図2を参照して、本発明が適用される場面の他の例について説明する。図2は、変形例に従う制御システム1の概要を示す模式図である。
図1の例では、調整部264は、予め決められた移動指令MVを移動機構400に入力してエンコーダ450から得られるエンコーダ値PVの推移に基づいて、制御パラメータ262を調整していた。これに対して、図2の例では、調整部264は、予め決められた移動指令MVを移動機構400に入力して視覚センサ50から得られる実位置PVの推移に基づいて制御パラメータ262を調整する。制御パラメータ262の調整方法の詳細については後述する。
また、図2に示される制御システム1は、位置決定部252を有さない点、エンコーダ値PVがコントローラ200にフィードバックされない点で、図1に示される制御システム1と異なる。図2に示される制御システム1のその他の点について図1に示される制御システム1と同じであるので、それらの説明については繰り返さない。
<C.制御システム1の装置構成>
図3は、制御システム1の装置構成の一例を示す図である。図3に示されるように、制御システム1は、視覚センサ50と、コントローラ200と、移動機構400とを含む。視覚センサ50は、画像処理装置100と、1つ以上のカメラ(図3の例では、カメラ102および104)とを含む。移動機構400は、ベースプレート4,7と、ボールネジ6,9と、サーボドライバ402(図3の例では、サーボドライバ402X,402Y)と、ステージ420と、1つ以上のサーボモータ410(図3の例では、サーボモータ410X,410Y)とで構成されている。
画像処理装置100は、カメラ102,104がワークWを撮影して得られた画像データに基づいて、ワークWの特徴部分12(たとえば、ネジ穴など)を検出する。画像処理装置100は、検出した特徴部分12の位置をワークWの実位置PVとして検出する。
コントローラ200には、1つ以上のサーボドライバ402(図3の例では、サーボドライバ402X,402Y)が接続されている。サーボドライバ402Xは、コントローラ200からの受けるX方向の移動指令に従って、制御対象のサーボモータ410Xを駆動する。サーボドライバ402Yは、コントローラ200からの受けるY方向の移動指令に従って、制御対象のサーボモータ410Yを駆動する。
コントローラ200は、X方向に対して生成された目標軌道TGxに従って、サーボドライバ402Xに対してX方向の目標位置を指令値として与える。また、コントローラ200は、Y方向に対して生成された目標軌道TGyに従って、サーボドライバ402Yに対してY方向の目標位置を指令値として与える。X,Y方向のそれぞれの目標位置が順次更新されることで、ワークWが目標位置SPに移動させられる。
コントローラ200およびサーボドライバ402は、フィールドネットワークを介してデイジーチェーンで接続されている。フィールドネットワークには、たとえば、EtherCAT(登録商標)が採用される。但し、フィールドネットワークは、EtherCATに限定されず、任意の通信手段が採用され得る。一例として、コントローラ200およびサーボドライバ402は、信号線で直接接続されてもよい。また、コントローラ200およびサーボドライバ402は、一体的に構成されてもよい。
ベースプレート4には、ステージ420をX方向に沿って移動させるボールネジ6が配置されている。ボールネジ6は、ステージ420に含まれるナットと係合されている。ボールネジ6の一端に連結されたサーボモータ410Xが回転駆動することで、ステージ420に含まれるナットとボールネジ6とが相対回転し、その結果、ステージ420がX方向に沿って移動する。
ベースプレート7は、ステージ420およびベースプレート4をY方向に沿って移動させるボールネジ9が配置されている。ボールネジ9は、ベースプレート4に含まれるナットと係合されている。ボールネジ9の一端に連結されたサーボモータ410Yが回転駆動することで、ベースプレート4に含まれるナットとボールネジ9とが相対回転し、その結果、ステージ420およびベースプレート4がY方向に沿って移動する。
なお、図3には、サーボモータ410X,410Yによる2軸駆動の移動機構400が示されているが、移動機構400は、XY平面上の回転方向(θ方向)にステージ420を駆動するサーボモータがさらに組み込まれてもよい。
<D.ハードウェア構成>
図4および図5を参照して、視覚センサ50を構成する画像処理装置100およびコントローラ200のハードウェア構成について順に説明する。
(D1.画像処理装置100のハードウェア構成)
図4は、視覚センサ50を構成する画像処理装置100のハードウェア構成の一例を示す模式図である。図4を参照して、画像処理装置100は、典型的には、汎用的なコンピュータアーキテクチャに従う構造を有しており、予めインストールされたプログラムをプロセッサが実行することで、後述するような各種の画像処理を実現する。
より具体的には、画像処理装置100は、CPU(Central Processing Unit)やMPU(Micro-Processing Unit)などのプロセッサ110と、RAM(Random Access Memory)112と、表示コントローラ114と、システムコントローラ116と、I/O(Input Output)コントローラ118と、ハードディスク120と、カメラインターフェイス122と、入力インターフェイス124と、コントローラインターフェイス126と、通信インターフェイス128と、メモリカードインターフェイス130とを含む。これらの各部は、システムコントローラ116を中心として、互いにデータ通信可能に接続される。
プロセッサ110は、システムコントローラ116との間でプログラム(コード)などを交換して、これらを所定順序で実行することで、目的の演算処理を実現する。
システムコントローラ116は、プロセッサ110、RAM112、表示コントローラ114、およびI/Oコントローラ118とそれぞれバスを介して接続されており、各部との間でデータ交換などを行なうとともに、画像処理装置100全体の処理を司る。
RAM112は、典型的には、DRAM(Dynamic Random Access Memory)などの揮発性の記憶装置であり、ハードディスク120から読み出されたプログラムや、カメラ102および104によって取得されたカメラ画像(画像データ)、カメラ画像に対する処理結果、およびワークデータなどを保持する。
表示コントローラ114は、表示部132と接続されており、システムコントローラ116からの内部コマンドに従って、各種の情報を表示するための信号を表示部132へ出力する。
I/Oコントローラ118は、画像処理装置100に接続される記録媒体や外部機器との間のデータ交換を制御する。より具体的には、I/Oコントローラ118は、ハードディスク120と、カメラインターフェイス122と、入力インターフェイス124と、コントローラインターフェイス126と、通信インターフェイス128と、メモリカードインターフェイス130と接続される。
ハードディスク120は、典型的には、不揮発性の磁気記憶装置であり、プロセッサ110で実行される制御プログラム150に加えて、各種設定値などが格納される。このハードディスク120にインストールされる制御プログラム150は、メモリカード136などに格納された状態で流通する。なお、ハードディスク120に代えて、フラッシュメモリなどの半導体記憶装置やDVD−RAM(Digital Versatile Disk Random Access Memory)などの光学記憶装置を採用してもよい。
カメラインターフェイス122は、ワークを撮影することで生成された画像データを受け付ける入力部に相当し、プロセッサ110とカメラ102,104との間のデータ伝送を仲介する。カメラインターフェイス122は、カメラ102および104からの画像データをそれぞれ一時的に蓄積するための画像バッファ122aおよび122bを含む。複数のカメラに対して、カメラの間で共有できる単一の画像バッファを設けてもよいが、処理高速化のため、それぞれのカメラに対応付けて独立に複数配置することが好ましい。
入力インターフェイス124は、プロセッサ110とキーボード134、マウス、タッチパネル、専用コンソールなどの入力装置との間のデータ伝送を仲介する。
コントローラインターフェイス126は、プロセッサ110とコントローラ200との間のデータ伝送を仲介する。
通信インターフェイス128は、プロセッサ110と図示しない他のパーソナルコンピュータやサーバ装置などとの間のデータ伝送を仲介する。通信インターフェイス128は、典型的には、イーサネット(登録商標)やUSB(Universal Serial Bus)などからなる。
メモリカードインターフェイス130は、プロセッサ110と記録媒体であるメモリカード136との間のデータ伝送を仲介する。メモリカード136には、画像処理装置100で実行される制御プログラム150などが格納された状態で流通し、メモリカードインターフェイス130は、このメモリカード136から制御プログラムを読み出す。メモリカード136は、SD(Secure Digital)などの汎用的な半導体記憶デバイスや、フレキシブルディスク(Flexible Disk)などの磁気記録媒体や、CD−ROM(Compact Disk Read Only Memory)などの光学記録媒体等からなる。あるいは、通信インターフェイス128を介して、配信サーバなどからダウンロードしたプログラムを画像処理装置100にインストールしてもよい。
上述のような汎用的なコンピュータアーキテクチャに従う構造を有するコンピュータを利用する場合には、本実施の形態に従う機能を提供するためのアプリケーションに加えて、コンピュータの基本的な機能を提供するためのOS(Operating System)がインストールされていてもよい。この場合には、本実施の形態に従う制御プログラムは、OSの一部として提供されるプログラムモジュールのうち、必要なモジュールを所定の順序および/またはタイミングで呼び出して処理を実行するものであってもよい。
さらに、本実施の形態に従う制御プログラムは、他のプログラムの一部に組み込まれて提供されるものであってもよい。その場合にも、プログラム自体には、上記のような組み合わせられる他のプログラムに含まれるモジュールを含んでおらず、当該他のプログラムと協働して処理が実行される。すなわち、本実施の形態に従う制御プログラムとしては、このような他のプログラムに組み込まれた形態であってもよい。
なお、代替的に、制御プログラムの実行により提供される機能の一部もしくは全部を専用のハードウェア回路として実装してもよい。
(D2.コントローラ200のハードウェア構成)
図5は、コントローラ200のハードウェア構成を示す模式図である。図5を参照して、コントローラ200は、主制御ユニット210とを含む。図5には、3軸分のサーボモータ410X,410Y,410θが示されており、この軸数に応じた数のサーボドライバ402X,402Y,402が設けられる。
主制御ユニット210は、チップセット212と、プロセッサ214と、不揮発性メモリ216と、主メモリ218と、システムクロック220と、メモリカードインターフェイス222と、通信インターフェイス228と、内部バスコントローラ230と、フィールドバスコントローラ238とを含む。チップセット212と他のコンポーネントとの間は、各種のバスを介してそれぞれ結合されている。
プロセッサ214およびチップセット212は、典型的には、汎用的なコンピュータアーキテクチャに従う構成を有している。すなわち、プロセッサ214は、チップセット212から内部クロックに従って順次供給される命令コードを解釈して実行する。チップセット212は、接続されている各種コンポーネントとの間で内部的なデータを遣り取りするとともに、プロセッサ214に必要な命令コードを生成する。システムクロック220は、予め定められた周期のシステムクロックを発生してプロセッサ214に提供する。チップセット212は、プロセッサ214での演算処理の実行の結果得られたデータなどをキャッシュする機能を有する。
主制御ユニット210は、記憶手段として、不揮発性メモリ216および主メモリ218を有する。不揮発性メモリ216は、OS、システムプログラム、ユーザプログラム、データ定義情報、ログ情報などを不揮発的に保持する。主メモリ218は、揮発性の記憶領域であり、プロセッサ214で実行されるべき各種プログラムを保持するとともに、各種プログラムの実行時の作業用メモリとしても使用される。
主制御ユニット210は、通信手段として、通信インターフェイス228と、内部バスコントローラ230と、フィールドバスコントローラ238とを有する。これらの通信回路は、データの送信および受信を行なう。
通信インターフェイス228は、画像処理装置100との間でデータを遣り取りする。
内部バスコントローラ230は、内部バス226を介したデータの遣り取りを制御する。より具体的には、内部バスコントローラ230は、バッファメモリ236と、DMA(Dynamic Memory Access)制御回路232と、内部バス制御回路234とを含む。
メモリカードインターフェイス222は、主制御ユニット210に対して着脱可能なメモリカード224とプロセッサ214とを接続する。
フィールドバスコントローラ238は、フィールドネットワークに接続するための通信インターフェイスである。コントローラ200は、フィールドバスコントローラ238を介してサーボドライバ402(たとえば、サーボドライバ402X,402Y,402θ)と接続される。当該フィールドネットワークには、たとえば、EtherCAT(登録商標)、EtherNet/IP(登録商標)、CompoNet(登録商標)などが採用される。
<E.制御パラメータ262の調整処理>
図6および図7を参照して、調整部264による制御パラメータ262の調整フローについて説明する。
図6は、制御パラメータ262の調整処理の流れを表わすフローチャートである。図6に示される処理は、コントローラ200のプロセッサ214が調整部264として機能することにより実現される。他の局面において、図6に示される処理の一部または全部が、回路素子またはその他のハードウェアによって実行されてもよい。
図6に示される処理は、ある軸方向に対する制御フローを表わす。実際には、図6に示される各処理は、軸方向の分だけ並列に実行される。
ステップS110において、調整部264は、初期化処理を実行する。一例として、プロセッサ214は、計測時間tを0に初期化し、フィードバック値を記憶するための変数PVn−1を0に初期化する。ここでいう「フィードバック値」とは、図1の例ではエンコーダ450によって検出されたエンコーダ値PVに相当し、図2の例では視覚センサ50によって計測された実位置PVに相当する。
ステップS112において、調整部264は、下記の(式1)に従って、サーボドライバ402に出力するための移動指令MVを生成し、移動指令MVをサーボドライバ402に出力する。
MV=Rmv*t ・・・(式1)
ステップS114において、調整部264は、移動指令MVの応答としてフィードバック値PVnを取得する。上述のように、「フィードバック値」とは、図1の例ではエンコーダ450によって検出されたエンコーダ値PVに相当し、図2の例では視覚センサ50によって計測された実位置PVに相当する。
ステップS120において、調整部264は、下記(式2)に従って、フィードバック値PVの時間当たりの変化率が現時点での最大変化率Rmaxを超えているか否かを判断する。より具体的には、調整部264は、今回のフィードバック値PVから前回のフィードバック値PVn−1を差分し、当該差分結果を制御周期Tsで除算し、当該除算結果が現時点での最大変化率Rmaxを超えているか否かを判断する。
(PV−PVn−1)/Ts>Rmax ・・・(式2)
調整部264は、フィードバック値PVの時間当たりの変化率が現時点での最大変化率Rmaxを超えていると判断した場合(ステップS120においてYES)、制御をステップS122に切り替える。そうでない場合には(ステップS120においてNO)、調整部264は、制御をステップS130に切り替える。
ステップS122において、調整部264は、下記(式3)に従って、現時点で記録されている最大変化率Rmaxを新たに更新された最大変化率に書き換える。
max=(PV−PVn−1)/Ts ・・・(式3)
また、調整部264は、最大変化率Rmaxが出現した時点におけるフィードバック値PVをフィードバック値PVとして記憶する。また、調整部264は、最大変化率Rmaxが出現した時間を時間Tとして記憶する。ステップS122で記憶される各種情報は、たとえば、コントローラ200の記憶部(たとえば、不揮発性メモリ216または主メモリ218(図5参照))に格納する。
ステップS124において、調整部264は、今回のフィードバック値PVで前回のフィードバック値PVn−1を更新する。また、調整部264は、計測時間tに制御周期Tsを加算し、計測時間tを更新する。
ステップS130において、調整部264は、フィードバック値の計測を終了するか否かを判断する。一例として、調整部264は、予め定められた計測終了条件が満たされた場合に、フィードバック値の計測を終了すると判断する。ある局面において、計測終了条件は、ステップS130の処理の実行回数が予め定められた回数に達した場合に満たされる。他の局面において、計測終了条件は、最大変化率Rmaxが一定値に収束した場合に満たされる。調整部264は、フィードバック値の計測を終了すると判断した場合(ステップS130においてYES)、制御をステップS140に切り替える。そうでない場合には(ステップS130においてNO)、調整部264は、制御をステップS112に戻す。
図7は、移動機構400に入力された移動指令MVと、その応答として移動機構400から出力されるフィードバック値PVとの関係を時間軸上に示す図である。
ステップS112の処理が繰り返されることで、図7に示されるランプ状の移動指令MVがサーボドライバ402に入力されることになる。なお、移動指令MVが位置指令である場合には、サーボドライバ402に入力される移動指令MVは、図7に示されるようなランプ状になるが、移動指令MVが速度指令である場合には、サーボドライバ402に入力される移動指令MVnは一定値となる。
調整部264は、予め決められた移動指令MVを移動機構400に順次出力して得られたフィードバック値PVの推移に基づいて、フィードバック制御部254に係る制御パラメータ262(たとえば、比例ゲインKp)を調整する。
より具体的には、ステップS140において、調整部264は、下記(式4)に従って、定常ゲインKを算出する。
K=Rmax/Rmv ・・・(式4)
(式4)に示される「Rmax」は、ステップS122で記憶された最大変化率に相当する。「Rmv」は、移動指令MVの推移における傾き(すなわち、変化率)を表わす。
ステップS142において、調整部264は、フィードバック制御部254の制御対象の遅れ時間を算出する。「遅れ時間」とは、フィードバック制御部254の制御対象に対して移動指令を与えてから、当該移動指令に応じた出力が現れるまでの時間を表わす。フィードバック制御部254の制御対象は、図1に示される制御システム1の例では、移動機構400とエンコーダ450とを含む制御系を指す。一方で、フィードバック制御部254の制御対象は、図2に示される制御システム1の例では、視覚センサ50と、移動機構400と、エンコーダ450とを含む制御系を指す。
調整部264は、フィードバック値PVの推移において最大変化率Rmaxが出現した時間Tと、最大変化率Rmaxとに基づいて、フィードバック制御部254による制御対象の遅れ時間Lを算出する。一例として、遅れ時間Lは、下記(式5)に基づいて算出される。
L=T−PV/Rmax ・・・(式5)
ステップS144において、調整部264は、ステップS140で算出した定常ゲインKと、ステップS142で算出した遅れ時間Lとに基づいて、比例ゲインKpを算出する。比例ゲインKpは、たとえば、下記(式6)に基づいて算出される。
Kp=α/(K・L) ・・・(式6)
(式6)に示される「α」は、予め定められた係数である。(式6)に示されるように、遅れ時間Lが長いほど、調整部264は、比例ゲインKpを小さくする。異なる言い方をすれば、遅れ時間Lが短いほど、調整部264は、比例ゲインKpを大きくする。また、定常ゲインが大きいほど、調整部264は、比例ゲインKpを小さくする。異なる言い方をすれば、定常ゲインが小さいほど、調整部264は、比例ゲインKpを大きくする。
ステップS146において、調整部264は、ステップS144で算出した比例ゲインKpをフィードバック制御部254の制御パラメータ262として設定する。
なお、上述では、ステップS140で定常ゲインKが算出される例について説明を行なったが、図1に示される制御システム1のように、入力値としての移動指令MVと、出力値としてのフィードバック値PVnとが定常的に一致する場合には、定常ゲインKが1となるので、ステップS140の処理は省略されてもよい。「K=1」となる場合、比例ゲインKpは、上記(式6)に示されるように、遅れ時間Lに基づいて決められる。また、「K=1」となる場合、遅れ時間Lは、下記(式7)に基づいて算出される。
L=T−PV/Rmv ・・・(式7)
また、図6の例では、ステップS110において、フィードバック値PVn−1の初期値が0に設定される例について説明を行なったが、フィードバック値PVn−1の初期値は、必ずしも0に設定される必要はない。一例として、フィードバック値の初期値が一定値PV0に安定している場合には、遅れ時間Lは、下記(式8)に基づいて算出される。
L=T−(PV−PV0)/Rmax ・・・(式8)
また、図6の例では、フィードバック値PVの最大変化率RmaxがステップS122で逐次更新される例について説明を行なったが、調整部264は、ステップS114で計測されたフィードバック値PVを全て記憶しておき、記憶された全てのフィードバック値PVから最大変化率Rmaxを算出してもよい。
<F.制御パラメータ262の最適化処理>
図8を参照して、上記「E.制御パラメータ262の調整処理」で決定された制御パラメータ262の最適化処理について説明する。
図8は、制御パラメータ262の最適化処理の流れ表わすフローチャートである。図8に示される処理は、コントローラ200のプロセッサ214が調整部264として機能することにより実現される。他の局面において、図8に示される処理の一部または全部が、回路素子またはその他のハードウェアによって実行されてもよい。
以下では、上記「E.制御パラメータ262の調整処理」で決定された制御パラメータ262を「基準の比例ゲインKp」ともいう。
ステップS150において、調整部264は、基準の比例ゲインKpに乗じる倍率β(i)を取得する。倍率β(i)は、予め定められていてもよいし、ユーザによって任意に設定されてもよい。倍率β(i)は、たとえば、変数「β(1)〜β(n)」を管理する配列データである。
ステップS152において、調整部264は、変数iを1に初期化する。
ステップS154において、調整部264は、基準の比例ゲインKpに倍率β(i)を乗算し、設定候補の比例ゲインKp(i)を生成する。
ステップS156において、調整部264は、ステップS154で生成した設定候補の比例ゲインKp(i)をフィードバック制御部254に設定するとともに、所定のアライメント処理をフィードバック制御部254に実行させる。一例として、当該所定のアライメント処理は、予め定められた開始位置から予め定められた目標位置SPまでワークWを移動する処理である。このとき、調整部264は、予め定められた開始位置から予め定められた目標位置SPまでワークWを移動するまでに要するアライメント時間Ta(i)を計測しておく。
ステップS158において、調整部264は、ステップS156で計測されたアライメント時間Ta(i)をコントローラ200の記憶部(たとえば、不揮発性メモリ216または主メモリ218(図5参照))に格納する。
ステップS160において、調整部264は、変数iをインクリメントする。すなわち、調整部264は、変数iに1を加算する。
ステップS170において、調整部264は、変数iが所定値nよりも小さいか否かを判断する。所定値nは、ステップS154,S156,S158,S160の実行回数を表し、予め規定されている。調整部264は、変数iが所定値nよりも小さいと判断した場合(ステップS170においてYES)、制御をステップS154に戻す。そうでない場合には(ステップS170においてNO)、調整部264は、制御をステップS172に切り替える。
ステップS172において、調整部264は、制御パラメータ候補Kp(i)の内、アライメント時間Ta(i)が最短となる制御パラメータ候補を最適結果としての制御パラメータ262として選択する。
以上のように、調整部264は、予め決められた倍率β(i)のそれぞれを基準の比例ゲインKpに乗算することで制御パラメータ候補Kp(i)を生成する。そして、調整部264は、制御パラメータ候補Kp(i)の各々をフィードバック制御部254の制御パラメータ262に順次設定するとともに、各制御パラメータ候補について、ワークWを所定位置から目標位置SPに移動するまでに要したアライメント時間Ta(i)を計測する。その後、調整部264は、制御パラメータ候補Kp(i)の内、アライメント時間Ta(i)が最短となる制御パラメータ候補を最適化結果としての制御パラメータ262として選択する。これにより、調整部264は、上記「E.制御パラメータ262の調整処理」で決定された制御パラメータ262をさらに最適化することができる。
なお、図8の例では、アライメント時間Ta(i)が最短となる制御パラメータ候補を最適化結果として選択する例について説明を行なったが、その他の評価指標に基づいて、制御パラメータ262が最適化されてもよい。一例として、調整部264は、各制御パラメータ候補について最大オーバーシュート距離を算出し、最大オーバーシュート距離が最小となる制御パラメータ候補を最適化結果として選択してもよい。あるいは、調整部264は、各制御パラメータ候補について移動距離を算出し、移動距離が最小となる制御パラメータ候補を最適化結果として選択してもよい。
<G.推定位置PVの決定処理>
図9は、図1に示される位置決定部252による推定位置PVの決定処理を表わすフローチャートである。以下では、図9を参照して、位置決定部252による推定位置PVの決定処理について説明する。
ステップS421において、位置決定部252は、視覚センサ50から実位置PVが得られているか否かを検出する。位置決定部252は、実位置PVが得られている時刻であれば(ステップS421においてYES)、制御をステップS422に切り替える。そうでない場合には(ステップS421においてNO)、位置決定部252は、制御をステップS427に切り替える。
ステップS422において、位置決定部252は、実位置PVが正常値であるか否かを判断する。たとえば、位置決定部252は、実位置PVが所定範囲内の値であれば正常値であると判断する。位置決定部252は、実位置PVが正常値であると判断した場合(ステップS422においてYES)、制御をステップS423に切り替える。そうでない場合には(ステップS427においてNO)、位置決定部252は、制御をステップS427に切り替える。
ステップS423において、位置決定部252は、実位置PVの入力を受け付ける。ステップS424において、位置決定部252は、実位置PVの入力を受け付けると、当該実位置PVの算出の元となる撮像時刻のエンコーダ値PVmsの推定を行なう。なお、撮像部52の露光時間が長い場合、撮像時刻は、たとえば、露光開始時刻(撮像部52のシャッターが開となる時刻)と露光終了時刻(撮像部52のシャッターが閉となる時刻)との中間の時刻によって設定される。
ステップS425において、位置決定部252は、同時刻の実位置PVおよびエンコーダ値PVと、当該実位置PVの算出元となる撮像時刻のエンコーダ値PVmsとを用いて、推定位置PVを算出する。より具体的には、ステップS425では、位置決定部252は、次の(式9)を用いて、推定位置PVを算出する。
PV=PV+(PV−PVms) ・・・(式9)
ステップS426において、位置決定部252は、算出した推定位置PVをフィードバック制御部254に出力する。また、位置決定部252は、この推定位置PVを参照推定位置PVとし、この時刻のエンコーダ値PVを参照エンコーダ値PVmpとして記憶する。
ステップS427において、位置決定部252は、実位置PVの出力が1回以上であるか否かを判断する。位置決定部252は、実位置PVの出力が1回以上であると判断した場合(ステップS427においてYES)、制御をステップS428に切り替える。そうでない場合には(ステップS427においてNO)、プロセッサ214は、制御をステップS426に切り替える。
ステップS428において、位置決定部252は、エンコーダ値PV、参照推定位置PV、および、参照エンコーダ値PVmpを用いて、推定位置PVを算出する。より具体的には、ステップS428では、位置決定部252は、次の(式10)を用いて、推定位置PVを算出する。
PV=PV+PV―PVmp ・・・(式10)
<H.付記>
以上のように、本実施形態は以下のような開示を含む。
[構成1]
対象物を移動させるための移動機構(400)と、
撮像指示を受け付けたことに基づいて前記対象物を撮像し、撮像により得られた画像から前記対象物の実位置を計測するための視覚センサ(50)と、
前記撮像指示が前記視覚センサ(50)に出力される間隔よりも短い予め定められた制御周期ごとに前記移動機構(400)の位置に関する位置関連情報を検出するための検出部(450)と、
前記実位置と前記位置関連情報とに基づいて、現時点における前記対象物の推定位置を前記制御周期ごとに決定するための位置決定部(252)と、
設定されている制御パラメータに従って、前記推定位置を前記対象物の目標位置に合わせるための移動指令を前記制御周期ごとに生成し、当該移動指令を前記制御周期ごとに前記移動機構(400)に出力するフィードバック制御部(254)と、
予め決められた移動指令を前記移動機構(400)に順次出力して前記検出部(450)から得られるフィードバック値としての位置関連情報の推移に基づいて、前記制御パラメータを調整するための調整部(264)とを備える、制御システム(1)。
[構成2]
対象物を移動させるための移動機構(400)と、
撮像指示を受け付けたことに基づいて前記対象物を撮像し、撮像により得られた画像から前記対象物の実位置を計測するための視覚センサ(50)と、
前記撮像指示が前記視覚センサ(50)に出力される間隔よりも短い予め決められた制御周期ごとに、所定の制御パラメータに従って、前記実位置を前記対象物の目標位置に合わせるための移動指令を生成し、当該移動指令を前記移動機構(400)に出力するフィードバック制御部(254)と、
予め決められた移動指令を前記移動機構(400)に順次出力して前記視覚センサ(50)から得られるフィードバック値としての実位置の推移に基づいて、前記制御パラメータを調整するための調整部(264)とを備える、制御システム(1)。
[構成3]
前記調整部(264)は、
前記推移に基づいて決定された前記制御パラメータの値を基準として、前記フィードバック制御部(254)に設定され得る複数の制御パラメータ候補を生成し、
前記複数の制御パラメータ候補の各々を前記フィードバック制御部(254)に順次設定するとともに、各制御パラメータ候補について、前記対象物を所定位置から前記目標位置に移動するまでに要したアライメント時間を計測し、
前記複数の制御パラメータ候補の内、前記アライメント時間が最短となる制御パラメータ候補を最適化結果としての前記制御パラメータとして選択する、構成1または2に記載の制御システム(1)。
[構成4]
前記調整部(264)は、予め決められた複数の倍率のそれぞれを前記基準の制御パラメータに乗算することで、前記複数の制御パラメータ候補を生成する、構成3に記載の制御システム(1)。
[構成5]
前記調整部(264)は、
前記推移における単位時間当たりの最大変化率を算出し、
前記推移において前記最大変化率が表れる時点と、前記最大変化率とに基づいて、前記フィードバック制御部(254)による制御対象の遅れ時間を算出し、
前記遅れ時間に基づいて、前記制御パラメータを決定する、構成1〜4のいずれか1項に記載の制御システム(1)。
[構成6]
前記制御パラメータは、前記フィードバック制御部(254)の比例制御に用いられる比例ゲインを含む、構成1〜5のいずれか1項に記載の制御システム(1)。
[構成7]
対象物を移動させるための移動機構(400)の制御方法であって、
撮像指示を視覚センサ(50)に出力することで前記対象物を撮像し、撮像により得られた画像から前記対象物の実位置を前記視覚センサ(50)に計測させるステップと、
前記撮像指示が前記視覚センサ(50)に出力される間隔よりも短い予め定められた制御周期ごとに前記移動機構(400)の位置に関する位置関連情報を検出するステップと、
前記実位置と前記位置関連情報とに基づいて、現時点における前記対象物の推定位置を前記制御周期ごとに決定するステップと、
設定されている制御パラメータに従って、前記推定位置を前記対象物の目標位置に合わせるための移動指令を前記制御周期ごとに生成し、当該移動指令を前記制御周期ごとに前記移動機構(400)に出力するステップと、
予め決められた移動指令を前記移動機構(400)に順次出力して前記検出するステップで得られるフィードバック値としての位置関連情報の推移に基づいて、前記制御パラメータを調整するステップとを備える、制御方法。
[構成8]
対象物を移動させるための移動機構(400)の制御プログラムであって、
前記制御プログラムは、前記移動機構(400)を制御するためのコントローラに、
撮像指示を視覚センサ(50)に出力することで前記対象物を撮像し、撮像により得られた画像から前記対象物の実位置を前記視覚センサ(50)に計測させるステップと、
前記撮像指示が前記視覚センサ(50)に出力される間隔よりも短い予め定められた制御周期ごとに前記移動機構(400)の位置に関する位置関連情報を検出するステップと、
前記実位置と前記位置関連情報とに基づいて、現時点における前記対象物の推定位置を前記制御周期ごとに決定するステップと、
設定されている制御パラメータに従って、前記推定位置を前記対象物の目標位置に合わせるための移動指令を前記制御周期ごとに生成し、当該移動指令を前記制御周期ごとに前記移動機構(400)に出力するステップと、
予め決められた移動指令を前記移動機構(400)に順次出力して前記検出するステップで得られるフィードバック値としての位置関連情報の推移に基づいて、前記制御パラメータを調整するステップとを実行させる、制御プログラム。
今回開示された実施の形態は全ての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内での全ての変更が含まれることが意図される。
1 制御システム、4,7 ベースプレート、6,9 ボールネジ、12 特徴部分、50 視覚センサ、52 撮像部、54 画像処理部、100 画像処理装置、102,104 カメラ、110,214 プロセッサ、112 RAM、114 表示コントローラ、116 システムコントローラ、118 I/Oコントローラ、120 ハードディスク、122 カメラインターフェイス、122a 画像バッファ、124 入力インターフェイス、126 コントローラインターフェイス、128,228 通信インターフェイス、130,222 メモリカードインターフェイス、132 表示部、134 キーボード、136,224 メモリカード、150 制御プログラム、210 主制御ユニット、212 チップセット、216 不揮発性メモリ、218 主メモリ、220 システムクロック、226 内部バス、230 内部バスコントローラ、232 制御回路、234 内部バス制御回路、236 バッファメモリ、238 フィールドバスコントローラ、252 位置決定部、254 フィードバック制御部、256 減算部、258 乗算部、262 制御パラメータ、264 調整部、400 移動機構、402,402X,402Y サーボドライバ、410,410X,410Y サーボモータ、420 ステージ、450 エンコーダ。

Claims (10)

  1. 対象物を移動させるための移動機構と、
    撮像指示を受け付けたことに基づいて前記対象物を撮像し、撮像により得られた画像から前記対象物の実位置を計測するための視覚センサと、
    前記撮像指示が前記視覚センサに出力される間隔よりも短い予め定められた制御周期ごとに前記移動機構の位置に関する位置関連情報を検出するための検出部と、
    前記実位置と前記位置関連情報とに基づいて、現時点における前記対象物の推定位置を前記制御周期ごとに決定するための位置決定部と、
    設定されている制御パラメータに従って、前記推定位置を前記対象物の目標位置に合わせるための移動指令を前記制御周期ごとに生成し、当該移動指令を前記制御周期ごとに前記移動機構に出力するフィードバック制御部と、
    予め決められた移動指令を前記移動機構に順次出力して前記検出部から得られるフィードバック値としての位置関連情報を取得して、前記予め決められた移動指令の複数の出力タイミングにそれぞれ対応する複数のフィードバック値の推移に基づいて、前記制御パラメータを調整するための調整部とを備える、制御システム。
  2. 対象物を移動させるための移動機構と、
    撮像指示を受け付けたことに基づいて前記対象物を撮像し、撮像により得られた画像から前記対象物の実位置を計測するための視覚センサと、
    前記撮像指示が前記視覚センサに出力される間隔よりも短い予め決められた制御周期ごとに、所定の制御パラメータに従って、前記実位置を前記対象物の目標位置に合わせるための移動指令を生成し、当該移動指令を前記移動機構に出力するフィードバック制御部と、
    予め決められた移動指令を前記移動機構に順次出力して前記視覚センサから得られるフィードバック値としての実位置を取得して、前記予め決められた移動指令の複数の出力タイミングにそれぞれ対応する複数のフィードバック値の推移に基づいて、前記制御パラメータを調整するための調整部とを備える、制御システム。
  3. 前記調整部は、
    前記推移に基づいて決定された前記制御パラメータの値を基準として、前記フィードバック制御部に設定され得る複数の制御パラメータ候補を生成し、
    前記複数の制御パラメータ候補の各々を前記フィードバック制御部に順次設定するとともに、各制御パラメータ候補について、前記対象物を所定位置から前記目標位置に移動するまでに要したアライメント時間を計測し、
    前記複数の制御パラメータ候補の内、前記アライメント時間が最短となる制御パラメータ候補を最適化結果としての前記制御パラメータとして選択する、請求項1または2に記載の制御システム。
  4. 前記調整部は、
    前記推移に基づいて決定された前記制御パラメータの値を基準として、前記フィードバック制御部に設定され得る複数の制御パラメータ候補を生成し、
    前記複数の制御パラメータ候補の各々を前記フィードバック制御部に順次設定するとともに、各制御パラメータ候補について、前記対象物が前記目標位置を超えた距離の最大値である最大オーバーシュート距離を算出し、
    前記複数の制御パラメータ候補の内、前記最大オーバーシュート距離が最小となる制御パラメータ候補を最適化結果としての前記制御パラメータとして選択する、請求項1または2に記載の制御システム。
  5. 前記調整部は、
    前記推移に基づいて決定された前記制御パラメータの値を基準として、前記フィードバック制御部に設定され得る複数の制御パラメータ候補を生成し、
    前記複数の制御パラメータ候補の各々を前記フィードバック制御部に順次設定するとともに、各制御パラメータ候補について、前記対象物の移動距離を算出し、
    前記複数の制御パラメータ候補の内、前記移動距離が最小となる制御パラメータ候補を最適化結果としての前記制御パラメータとして選択する、請求項1または2に記載の制御システム。
  6. 前記調整部は、予め決められた複数の倍率のそれぞれを前記基準の制御パラメータに乗算することで、前記複数の制御パラメータ候補を生成する、請求項3〜5のいずれか1項に記載の制御システム。
  7. 前記調整部は、
    前記推移における単位時間当たりの最大変化率を算出し、
    前記推移において前記最大変化率が表れる時点と、前記最大変化率とに基づいて、前記フィードバック制御部による制御対象の遅れ時間を算出し、
    前記遅れ時間に基づいて、前記制御パラメータを決定する、請求項1〜のいずれか1項に記載の制御システム。
  8. 前記制御パラメータは、前記フィードバック制御部の比例制御に用いられる比例ゲインを含む、請求項1〜のいずれか1項に記載の制御システム。
  9. 対象物を移動させるための移動機構の制御方法であって、
    撮像指示を視覚センサに出力することで前記対象物を撮像し、撮像により得られた画像から前記対象物の実位置を前記視覚センサに計測させるステップと、
    前記撮像指示が前記視覚センサに出力される間隔よりも短い予め定められた制御周期ごとに前記移動機構の位置に関する位置関連情報を検出するステップと、
    前記実位置と前記位置関連情報とに基づいて、現時点における前記対象物の推定位置を前記制御周期ごとに決定するステップと、
    設定されている制御パラメータに従って、前記推定位置を前記対象物の目標位置に合わせるための移動指令を前記制御周期ごとに生成し、当該移動指令を前記制御周期ごとに前記移動機構に出力するステップと、
    予め決められた移動指令を前記移動機構に順次出力して前記検出するステップで得られるフィードバック値としての位置関連情報を取得して、前記予め決められた移動指令の複数の出力タイミングにそれぞれ対応する複数のフィードバック値の推移に基づいて、前記制御パラメータを調整するステップとを備える、制御方法。
  10. 対象物を移動させるための移動機構の制御プログラムであって、
    前記制御プログラムは、前記移動機構を制御するためのコントローラに、
    撮像指示を視覚センサに出力することで前記対象物を撮像し、撮像により得られた画像から前記対象物の実位置を前記視覚センサに計測させるステップと、
    前記撮像指示が前記視覚センサに出力される間隔よりも短い予め定められた制御周期ごとに前記移動機構の位置に関する位置関連情報を検出するステップと、
    前記実位置と前記位置関連情報とに基づいて、現時点における前記対象物の推定位置を前記制御周期ごとに決定するステップと、
    設定されている制御パラメータに従って、前記推定位置を前記対象物の目標位置に合わせるための移動指令を前記制御周期ごとに生成し、当該移動指令を前記制御周期ごとに前記移動機構に出力するステップと、
    予め決められた移動指令を前記移動機構に順次出力して前記検出するステップで得られるフィードバック値としての位置関連情報を取得して、前記予め決められた移動指令の複数の出力タイミングにそれぞれ対応する複数のフィードバック値の推移に基づいて、前記制御パラメータを調整するステップとを実行させる、制御プログラム。
JP2018085123A 2018-04-26 2018-04-26 制御システム、制御方法、および制御プログラム Active JP6922829B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2018085123A JP6922829B2 (ja) 2018-04-26 2018-04-26 制御システム、制御方法、および制御プログラム
KR1020207026085A KR102612470B1 (ko) 2018-04-26 2019-03-29 제어 시스템, 제어 방법 및 컴퓨터 판독 가능한 기억 매체
CN201980018736.2A CN111868658A (zh) 2018-04-26 2019-03-29 控制系统、控制方法以及控制程序
PCT/JP2019/014129 WO2019208109A1 (ja) 2018-04-26 2019-03-29 制御システム、制御方法、および制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018085123A JP6922829B2 (ja) 2018-04-26 2018-04-26 制御システム、制御方法、および制御プログラム

Publications (2)

Publication Number Publication Date
JP2019188551A JP2019188551A (ja) 2019-10-31
JP6922829B2 true JP6922829B2 (ja) 2021-08-18

Family

ID=68295246

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018085123A Active JP6922829B2 (ja) 2018-04-26 2018-04-26 制御システム、制御方法、および制御プログラム

Country Status (4)

Country Link
JP (1) JP6922829B2 (ja)
KR (1) KR102612470B1 (ja)
CN (1) CN111868658A (ja)
WO (1) WO2019208109A1 (ja)

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3424849B2 (ja) * 1994-01-14 2003-07-07 株式会社安川電機 マニピュレータのコンプライアンス制御装置
JPH09247975A (ja) * 1996-03-12 1997-09-19 Matsushita Electric Ind Co Ltd モータドライブ装置
JP2003330510A (ja) * 2002-05-14 2003-11-21 Yaskawa Electric Corp 数値制御装置の同期制御方法
JP4698656B2 (ja) * 2007-11-12 2011-06-08 三菱電機株式会社 制御システムおよび制御支援装置
JP5834545B2 (ja) * 2011-07-01 2015-12-24 セイコーエプソン株式会社 ロボット、ロボット制御装置、ロボット制御方法、およびロボット制御プログラム
JP6167622B2 (ja) * 2013-04-08 2017-07-26 オムロン株式会社 制御システムおよび制御方法
JP2015213139A (ja) * 2014-05-07 2015-11-26 国立大学法人 東京大学 位置決め装置
JP6174636B2 (ja) 2015-07-24 2017-08-02 ファナック株式会社 ワークを位置決めするためのワーク位置決め装置
JP6551184B2 (ja) * 2015-11-18 2019-07-31 オムロン株式会社 シミュレーション装置、シミュレーション方法、およびシミュレーションプログラム

Also Published As

Publication number Publication date
CN111868658A (zh) 2020-10-30
KR20210004957A (ko) 2021-01-13
KR102612470B1 (ko) 2023-12-12
WO2019208109A1 (ja) 2019-10-31
JP2019188551A (ja) 2019-10-31

Similar Documents

Publication Publication Date Title
JP6167622B2 (ja) 制御システムおよび制御方法
CN110581946B (zh) 控制系统、控制装置、图像处理装置以及存储介质
US10656616B2 (en) Control device, control system, and recording medium
WO2019244638A1 (ja) 位置決めシステム、監視装置、監視方法およびプログラム
CN110581945B (zh) 控制系统、控制装置、图像处理装置以及存储介质
JP2006146572A (ja) サーボ制御装置および方法
TW202029879A (zh) 控制裝置及控制方法
JP6922829B2 (ja) 制御システム、制御方法、および制御プログラム
JP6950631B2 (ja) 位置決めシステム、制御方法およびプログラム
JP6919623B2 (ja) 制御システム、制御方法、および制御プログラム
JP7020262B2 (ja) 制御システム、制御方法およびプログラム
JP7003454B2 (ja) 制御装置、位置制御システム、位置制御方法、および、位置制御プログラム
JP6919622B2 (ja) 制御システム、制御方法、および制御プログラム
CN110581944B (zh) 控制系统、控制装置以及存储介质
JP7374354B1 (ja) アライメントシステム、アライメント方法及びプログラム
US20220134570A1 (en) Control device and alignment device
JP2018152005A (ja) 計測システム、制御装置、計測方法
KR20220092388A (ko) 추정 모델 작성 장치, 추정 모델 작성 방법 및 기억 매체
JP2020027029A (ja) 計測システム、計測方法、および計測プログラム
JP2011059904A (ja) 状態推定装置及び制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200309

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210216

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210406

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210712

R150 Certificate of patent or registration of utility model

Ref document number: 6922829

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150