(57)【特許請求の範囲】
【請求項１】
ドライバに対して周期的に速度の指令値を出力することにより、前記ドライバが制御対象を駆動するようになっている制御装置であって、
前記制御対象は、駆動されることにより粘性抵抗が作用するものであり、
前記制御対象の速度の現在値と、前記制御対象に作用する力の現在値とを取得し、
前記速度の現在値、前記力の現在値と前記力の所定の目標値との誤差、および、前記速度の現在値と前記速度の所定の目標値との誤差に基づいて、前記速度の指令値を演算する演算部を備えることを特徴とする、制御装置。
【請求項２】
前記演算部は、以下の関係式
Ｖｃ＝Ｖｎｏｗ＋｛Ｄｄ１（Ｖｄ−Ｖｎｏｗ）＋Ｍｄ１（Ｆｎｏｗ−Ｆｄ）｝Δｔ
但し、
Ｖｄ：前記速度の目標値、
Ｖｎｏｗ：前記速度の現在値、
Ｆｄ：前記力の目標値、
Ｆｎｏｗ：前記力の現在値、
Ｄｄ１：前記速度の重み係数、
Ｍｄ１：前記力の重み係数
に従って、前記速度の指令値Ｖｃを演算することを特徴とする、請求項１に記載の制御装置。
【請求項３】
前記速度の指令値の上限値および下限値を記憶する記憶部をさらに備え、
前記演算部は、演算した前記速度の指令値が前記上限値よりも大きい場合には、前記速度の指令値として前記上限値を前記ドライバに出力する一方、演算した前記速度の指令値が前記下限値よりも小さい場合には、前記速度の指令値として前記下限値を前記ドライバに出力することを特徴とする、請求項１または２に記載の制御装置。
【請求項４】
前記演算部は、前記指令値を周期的に出力する周期毎に、前記力の現在値に基づいて前記速度の重み係数Ｄｄ１を変更することを特徴とする、請求項２に記載の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、指令値を出力し指令値に基づいて制御対象を制御する制御装置であって、速度および力のハイブリッド制御を行う制御装置に関する。具体的には速度によって粘性抵抗が変化するような系において速度と力を所定の関係で制御する制御装置、制御方法に関する。
【背景技術】
【０００２】
位置と力の制御について、インピーダンス制御が知られている。機械のインピーダンス制御とは、制御対象に外から外力を加えた場合に生じる機械的なインピーダンス（慣性、減衰係数、剛性）を目的とする動作に合致するように制御する位置と力の制御方法である。特許文献１には、ロボットのエンドエフェクタに設けた力センサ情報に基づいてインピーダンス制御のパラメータを調整するパラメータ調整装置を開示する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−８８２２５号公報（２０１１年５月６日公開）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
押出し型の成形機は対象物を押し出して成型するにあたり、一定の速度かつ一定の力で押し出すように制御することが知られている。非押出し物の粘性抵抗Ｆは次の式で与えられる。Ｆ＝ＤＶ＋Ｕ（ここでＦ：粘性抵抗、Ｄ：粘性抵抗係数、Ｖ：速度、Ｕ：オフセット）このように粘性抵抗は、速度と力の関係式で与えられるため、温度変化等によって粘性抵抗が変化すると一定の速度かつ一定の力で制御することができない。
【０００５】
また当該押出し成型機等に用いられる制御システムは、典型的にはサーボモータと外サーボモータに指令値を与えることにより制御するコントローラで構成する。この構成では、コントローラは位置または速度指令値を該サーボモータへ出力することでサーボモータが駆動する制御対象物の位置または速度を制御する。またコントローラはトルク指令値をサーボモータへ出力することでサーボモータが所望のトルクで駆動されるように制御する。このような構成では上述したとおり、速度および力を同時に制御することができない。
【０００６】
本発明は、速度指令値によって対象物を駆動させる速度と対象物からの外力が変化した場合であっても、対象物の速度と対象物の力とを所定の関係で制御することが可能な制御装置、制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記の課題を解決するために、本発明の一態様に係る制御装置は、駆動されることにより所定の粘性力が反力として生じる制御対象と、前記制御対象を駆動する指令パターンから算出される目標値と、前記目標値に対する前記制御対象のフィードバック値から、前記制御対象に対して周期的に指令値を出力することにより、前記制御対象を制御する制御装置であって、前記指令値とは異なる制御物理量を取得し、取得した前記制御物理量と前記制御物理量の目標値との誤差と、前記フィードバック値と前記目標値との誤差との関係から、補正指令値を演算する補正演算部を備え、前記補正演算部は、前記補正指令値を前記制御対象へ出力する。
【０００８】
また、本発明の他の態様に係る制御装置において、前記指令値は速度指令値かつ、前記制御物理量は力であり、前記補正演算部は、速度インピーダンス制御の数式からバネ定数を無視して算出した以下の関係式、Ｖｃ＝Ｖｎｏｗ＋｛Ｄｄ１（Ｖｄ−Ｖｎｏｗ）＋Ｍｄ１（Ｆｎｏｗ−Ｆｄ）｝Δｔ、但し、Ｖｄ：速度目標値、Ｖｎｏｗ：速度フィードバック値、Ｆｄ：力目標値、Ｆｎｏｗ：力フィードバック値、Ｄｄ１：重み係数、Ｍｄ１：重み係数、から補正指令値を算出してもよい。
【０００９】
このように構成することにより、位置の偏差量に対する反力を表すバネ乗数を無視し、速度および力を制御するのみ好適な制御装置を得ることができる。
【００１０】
また、本発明の他の態様に係る制御装置は、前記補正指令値の上限値および下限値を記憶する記憶部をさらに備え、前記補正演算部は、算出した前記補正指令値が前記補正指令の上限値および下限値の範囲内にない場合には、前記補正指令値として前記上限値または前記下限値の値を出力してもよい。
【００１１】
このように構成することにより、最大値と最小値に基づいて補正速度指令値を算出することができる。
【００１２】
また、本発明の他の態様に係る制御装置では、前記指令値を周期的に出力する周期毎に当該制御装置の制御サイクルごとに、重み係数Ｄｄ１とＭｄ１との比率を変更し、変更した比率に基づき、補正速度指令値を出力してもよい。
【発明の効果】
【００１３】
本発明の一態様によれば、速度指令値によって対象物を駆動させる速度と対象物からの外力が変化した場合であっても、対象物の速度と対象物の力とを所定の関係で制御することが可能である。
【図面の簡単な説明】
【００１４】
【図１】一実施形態に係るコントローラのハードウェア構成の一例を示す模式図である。
【図２】一実施形態に係る制御システムの全体構成を示す図である。
【図３】一実施形態に係るコントローラが備えた演算部の構成を示すブロック図である。
【図４】本発明の一実施形態に係る制御装置が、速度インピーダンス制御を用いて速度指令を算出する流れを示すフローチャートである。
【図５】従来の速度制御、力制御、インピーダンス制御で速度指令値を補正した場合の時間と力の関係を示す。
【図６】粘性抵抗を特定の条件で変更した時の従来の速度制御、力制御、インピーダンス制御で速度指令値を補正した場合の時間と制御対象の速度との関係を示す。
【図７】速度の下限値を設けた場合のインピーダンス制御の結果を示す図であり、“複合インピーダンス制御”と、速度の下限値を設けない場合の“インピーダンス制御”との比較として、力と時間の関係を示す図である。
【図８】速度の下限値を設けた場合のインピーダンス制御の結果を示す図であり、“複合インピーダンス制御”と、速度の下限値を設けない場合の“インピーダンス制御”との比較として、速度と時間の関係を示す図である。
【図９】一実施形態のインピーダンス制御によって補正速度指令値を算出し、制御した結果と速度誤差と力誤差の誤差比率が一定の条件補正速度指令値を算出し、制御した結果、時間と力の関係をシミュレーションした結果を示す。
【図１０】本発明の一実施形態のインピーダンス制御によって補正速度指令値を算出し、制御した結果と速度誤差と力誤差の誤差比率が一定の条件補正速度指令値を算出し、制御した結果、時間と速度の関係をシミュレーションした結果を示す。
【図１１】本発明の一実施形態におけるライブラリプログラムを例を示す図である。
【発明を実施するための形態】
【００１５】
以下に本発明にかかる制御装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
〔実施の形態〕
＜システム全体構成＞
図２を参照して本発明の実施の形態に関する制御システムの全体構成を説明する。システム１はコントローラ１００とドライバ２００と制御対象で構成される。コントローラ１００は速度指令値を周期毎にドライバ２００に出力する。ドライバ２００は典型的にはサーボモータで構成され、コントローラ１００から出力された速度指令値と制御対象からのフィードバック値（例えば、力フィードバック値）に基づきモータ（図示せず）を駆動するトルク指令値を算出し、トルク指令値にてモータを駆動させる。制御対象はモータによって駆動され、制御対象が駆動されると制御対象の状態を図示しないエンコーダ等で検出し、位置または速度等の制御対象の状態がドライバ２００およびコントローラ１００へフィードバックされる。本発明は、駆動により速度の関数として与えられる粘性抵抗Ｆが生じる制御対象が前提である。例えば、Ｆ＝ＤＶ＋Ｕ（ここでＦ：粘性抵抗、Ｄ：粘性抵抗係数、Ｖ：速度、Ｕ：オフセット）である。本システム１ではさらに制御対象には力センサが取りつけられており、制御対象に作用する外力を検出し、ドライバ２００及びコントローラ１００へフィードバックされる。
【００１６】
コントローラ１００は、典型的にはＰＬＣ（プログラマブルロジックコントローラ）であり、ユーザに設定される目標とする制御軌跡から制御周期毎に速度指令値を算出する。コントローラ１００はさらに演算部１３０（図４参照）を備え、演算部１３０は算出された速度指令値（指令パターン）にフィードバックされた速度の現在値、力の現在値から補正速度指令値をドライバ２００へ出力する。速度の現在値と外力の現在値から補正速度指令値を算出する方法については後述する。
【００１７】
ドライバ２００は典型的にはサーボドライバ１９、２９（図１参照）で構成され、コントローラ１００から出力された補正速度指令値と速度フィードバック値からトルク指令値を算出し、モータへ出力する。
【００１８】
＜コントローラ１００のハードウェア構成＞
次に、コントローラ１００のハードウェア構成の構成について説明する。図１は、図２に示すコントローラ１００のハードウェア構成の一例を示す模式図である。図１を参照して、コントローラ１００は、予めインストールされたプログラムをプロセッサが実行することで、制御対象に対する制御を実現する。より具体的には、コントローラ１００は、ＣＰＵ（Central Processing Unit）やＭＰＵ（Micro-Processing Unit）などのプロセッサ１０２と、チップセット１０４と、メインメモリ１０６（記憶部）と、フラッシュメモリ１０８（記憶部）と、外部ネットワークコントローラ１１６と、メモリカードインターフェイス１１８と、内部バスコントローラ１２２と、フィールドバスコントローラ１２４とを含む。
【００１９】
プロセッサ１０２は、フラッシュメモリ１０８に格納されたシステムプログラム１１０およびユーザプログラム１１２を読み出して、メインメモリ１０６に展開して実行することで、制御対象に対する制御を実現する。システムプログラム１１０は、データの入出力処理や実行タイミング制御などの、コントローラ１００の基本的な機能を提供するための命令コードを含む。本実施の形態においては、システムプログラム１１０は、ライブラリプログラム１１０Ａを含む。ライブラリプログラム１１０Ａは、汎用的な処理を再利用可能な形で格納されており、ユーザプログラム１１２の実行時に、必要に応じて呼び出される（call/invoke）。すなわち、ライブラリプログラム１１０Ａは、コントローラ１００でのプログラム実行に用いられる。
【００２０】
ユーザプログラム１１２は、制御対象に応じて任意に設計され、シーケンス制御を実行するためのシーケンスプログラム１１２Ａおよびモーション制御を実行するためのモーションプログラム１１２Ｂとを含む。これらのシーケンスプログラム１１２Ａおよびモーションプログラム１１２Ｂは、ライブラリプログラム１１０Ａを適宜呼び出すことで実行される。
【００２１】
チップセット１０４は、各コンポーネントを制御することで、コントローラ１００全体としての処理を実現する。
【００２２】
内部バスコントローラ１２２は、コントローラ１００と内部バスを通じて連結されるＩ／Ｏユニット１２６とデータを遣り取りするインターフェイスである。フィールドバスコントローラ１２４は、コントローラ１００とフィールドバス（図示せず）を通じて連結されるＩ／Ｏユニット１２８とデータを遣り取りするインターフェイスである。内部バスコントローラ１２２およびフィールドバスコントローラ１２４は、対応のＩ／Ｏユニット１２６および１２８にそれぞれ入力される状態値を取得するとともに、プロセッサ１０２での演算結果を対応のＩ／Ｏユニット１２６および１２８から指令値としてそれぞれ出力する。
【００２３】
外部ネットワークコントローラ１１６は、各種の有線／無線ネットワークを通じたデータの遣り取りを制御する。メモリカードインターフェイス１１８は、メモリカード１２０を着脱可能に構成されており、メモリカード１２０に対してデータを書込み、メモリカード１２０からデータを読出すことが可能になっている。
【００２４】
コントローラ１００がプログラムを実行することで提供される機能の一部または全部を専用のハードウェア回路として実装してもよい。
【００２５】
＜速度と力の制御アルゴリズム＞
発明の発明者らは、速度および力について、速度目標値と速度指令値との誤差、または速度目標値と速度現在値との誤差と力の目標値と力の現在値との誤差を所定の比率で制御する手法を見出した。まずは速度および力の誤差の比率に基づき速度および力を制御する原理について説明する。
【００２６】
速度指令のインピーダンス制御の一般式を以下に示す。
【００２７】
【数１】
0006519458.tif 000002
【００２８】
・・・（数式１）
ここで、Ｋｄ：バネ定数、Ｄｄ：粘性係数、Ｍｄ：質量、ｘｄ：目標位置、ｖｄ：目標速度、Ｆｄ：目標力
上記数式１を変形させて、次の数式を得る。
【００２９】
【数２】
0006519458.tif 000003
【００３０】
・・・（数式２）
バネ定数を０、すなわちＫｄ１＝０としたとき、次の数式３を得る。
【００３１】
【数３】
0006519458.tif 000004
【００３２】
・・・（数式３）
数式３について、オイラーの近似により離散化して、次の数式４を得る。
Ｖｃ＝Ｖｎｏｗ＋｛Ｄｄ１（Ｖｄ−Ｖｎｏｗ）＋Ｍｄ１（Ｆｎｏｗ−Ｆｄ）｝Δｔ
・・・（数式４）
数式４に従って、速度の現在値、力の現在値を用いて速度指令値を算出する。この速度指令値は力の誤差値の項を含み、力フィードバック値を用いて補正速度指令値を算出することができる。
【００３３】
定常状態では、Ｖ指令≒Ｖｎｏｗより、次の数式を得る。
【００３４】
−Ｄｄ１（Ｖｄ−Ｖｎｏｗ）＝Ｍｄ１（Ｆｎｏｗ−Ｆｄ）したがってＤｄ１（Ｖｄ−Ｖｎｏｗ）＝Ｍｄ１（Ｆｄ−Ｆｎｏｗ）
インピーダンス制御の一般式から仮想バネ定数を０とおいた時に仮想粘性係数と仮想ダンパ係数との比を設定することにより、速度目標値と速度現在値との差である速度誤差と、力の目標値と力の現在値との差である力誤差が所定の関係で制御することができることを示している。
【００３５】
（制御方法）
図３に、演算部１３０の構成を示す。図４に、速度インピーダンス制御を用いて速度指令を算出するフローチャートを示す。図３および図４を参照して、速度インピーダンス制御におけるコントローラ１００の演算部１３０の動作を説明する。図３に示すように、演算部１３０は、指令値生成部１３２１および補正演算部１３２２を含んでいる。
【００３６】
Ｓ１では演算部１３０の指令値生成部１３２１はメモリから速度誤差と力誤差の比率を読み出す。ここで速度誤差と力誤差の比率は予め設定されているものであっても良いし、コントローラサポート装置等のユーザインターフェースを通じてユーザに設定させた値であっても良い。
【００３７】
Ｓ２では指令値生成部１３２１は、メモリから速度誤差として許容できる最大値および最小値を読み出す。
【００３８】
Ｓ３では指令値生成部１３２１は、制御対象が駆動された制御対象の速度および力の現在値を状フィードバック値として読み込む。読み込んだ速度および力の現在値とＳ１で読み出した速度誤差と力誤差の比率と目標速度および目標力とから、上述の数式４を用いて速度指令値を算出する。
【００３９】
Ｓ４では演算部１３０の補正演算部１３２２は、Ｓ３で算出した補正速度指令値がＳ２で読み出した許容最大値また許容最小値の範囲内に含まれるか判断する。補正演算部１３２２は、補正速度指令値が許容範囲内であればＳ３で算出した補正速度指令値をサーボドライバ１９へ出力する（Ｓ５）。
【００４０】
Ｓ３で電出した補正速度指令値が許容範囲外である場合は、補正演算部１３２２は、許容最大値または許容最小値補正速度指令値としてサーボドライバ１９（図１参照）へ出力する（Ｓ５）。
【００４１】
Ｓ６では演算部１３０は目標位置に到達したかを判断し、目標位置が到達した場合は終了する。
【００４２】
＜シミュレーション結果＞
図５から図６および表１を参照して、速度制御のみ、トルク制御のみ、本発明の誤差比率制御を行った時の結果を参照して本願発明誤差比率制御の効果を説明する。
【００４３】
【表１】
0006519458.tif 000005
【００４４】
表１には速度制御、トルク制御、インピータンス制御を行った場合の誤差の結果を示す表である。図５に粘性抵抗を以下の条件で変更した時の従来の速度制御、力制御、インピーダンス制御で速度指令値を補正した場合の時間と力の関係を示す。図６に、粘性抵抗を以下の条件で変更した時の従来の速度制御、力制御、インピーダンス制御で速度指令値を補正した場合の時間と制御対象の速度との関係を示す。
【００４５】
（条件）粘性抵抗Ｆ
Ｆ＝−３×Ｖ＋６（０＜＝ｔ＜＝２０）、Ｆ＝−２×Ｖ−３（２０＜＝ｔ）
となる。
【００４６】
図５および図６を参照すると、速度指令のインピーダンス制御を使用することで、目標速度からの誤差と力の目標値からの誤差の比に沿った速度値・力の値で制御対象を制御することができていることを示している。従来の速度制御、力制御のみの制御であれば、速度目標値のみ、力目標値のみに追従しているのと比較して、速度と力を所定の関係で制御することができる。これにより、上述したような押出し成形機のような機械の制御にコントローラを適用した場合には、粘性抵抗が制御中に変化したとしても、速度と力にいついて所定の関係保った状態で制御することができる。
【００４７】
表２および図７〜図８を速度の最大値、最小値と補正速度指令値を用いて制御を行った場合と速度の最大値、最小値と補正速度指令値を用いない場合でインピーダンス制御を行った結果を示す。粘性抵抗の変化は図５および図６のシミュレーションと条件と同一である。
【００４８】
【表２】
0006519458.tif 000006
【００４９】
表２を参照して、速度下限値として９．３５を設定した場合には、速度の下限値が９．３５として出力されていることが分かる。
【００５０】
図７は、速度の下限値を設けた場合のインピーダンス制御の結果を示す図であり、“複合インピーダンス制御”と、速度の下限値を設けない場合の“インピーダンス制御”との比較として、力と時間の関係を示す。
【００５１】
図８は、速度の下限値を設けた場合のインピーダンス制御の結果を示す図であり、“複合インピーダンス制御”と、速度の下限値を設けない場合の“インピーダンス制御”との比較として、速度と時間の関係を示す。
【００５２】
図７及び図８を参照して、速度の下限値を設けた場合は速度は補正速度指令値として速度の下限値が出力されており、補正速度指令値に基づいて力が制限されていることが分かる。このように速度の最大値・最小値として許容幅を設定し、インピーダンス制御により算出される補正速度指令が許容幅に合致するか否かに基づいて補正速度指令値を出力することにより、設定した最大値・最小値の間でインピーダンス制御に基づく補正指令値を用いて制御対象を制御することができる。
【００５３】
＜インピーダンス制御の変形例＞
これまでの発明の実施の形態においては、速度および力の誤差が所定の比率となるような補正速度指令値の算出方法を説明した。上述の押出し成形機等の制御に用いられるコントローラを考えると、速度の最大値・最小値だけでなく、力の最大値・最小値を用いて制御をしたい場合が想定される。
【００５４】
先の発明の実施の形態では、速度誤差と力誤差を固定してその比率に基づいて補正速度指令を算出したが、ここでは当該比率を制御周期ごとに異なる比率を用いて補正速度指令を算出する例を説明する。
【００５５】
先に説明した速度指令インピーダンス制御式
Ｖｃ＝Ｖｎｏｗ＋｛Ｄｄ１（Ｖｄ−Ｖｎｏｗ）＋Ｍｄ１（Ｆｎｏｗ−Ｆｄ）｝Δｔ
・・・（数式４）
となる。
【００５６】
本発明の実施形態では、Ｍｄ１の値が小さくなればなるほど、力の誤差の影響が小さくなり、Ｄｄ１の値が小さくなればなるほど、速度の誤差の影響が小さくなる。
【００５７】
この特性を利用し、速度の重み係数Ｄｄ１を以下の条件で時々刻々変動するＤｄ１＊に変更する。Ｄｄ１＊は以下の数式で与えられても良い。
【００５８】
【数４】
0006519458.tif 000007
【００５９】
・・・（数式５）
このように設定することにより、Ｆｎｏｗ≒ＦｍｉｎまたはＦｎｏｗ≒ＦｍａｘになるとＤｄ１＊の値は非常に小さくなるため、速度の誤差の影響をなくなり、力の追従性が上がるため、定常状態では、力が上限・下限値が超えることがなくなる。
【００６０】
数式５を用いて数式４を変更すると速度インピーダンス制御の数式６は以下で与えられる。
【００６１】
【数５】
0006519458.tif 000008
【００６２】
・・・（数式６）
ＦｎｏｗがＦｍａｘに近づくと、Ｆｍａｘ−Ｆｎｏｗ≒０になり、
【００６３】
【数６】
0006519458.tif 000009
【００６４】
となる。
【００６５】
これにより、以下の速度制御のインピーダンスの数式７は以下のようになる。
Ｖｃ＝Ｖｎｏｗ＋｛Ｍｄ１（Ｆｎｏｗ−Ｆｄ）｝Δｔ
・・・（数式７）
この数式にて補正速度指令値を求めると力が目標値Ｆｄに近づくように制御される。また、ＦｎｏｗがＦｍｉｎに近づく場合にも同様なことがいえるため、力が目標値Ｆｄに近づくように制御される。
【００６６】
図９に、本実施形態のインピーダンス制御によって補正速度指令値を算出し、制御した結果と速度誤差と力誤差の誤差比率が一定の条件補正速度指令値を算出し、制御した結果、時間と力の関係をシミュレーションした結果を示す。
【００６７】
図１０に、本実施形態のインピーダンス制御によって補正速度指令値を算出し、制御した結果と速度誤差と力誤差の誤差比率が一定の条件補正速度指令値を算出し、制御した結果、時間と速度の関係をシミュレーションした結果を示す。
【００６８】
図９及び図１０を参照して、力の最大値−１９および最小値−２１を超えることなく、制御することができる。
【００６９】
これにより、速度と力の最大値と最小値の範囲内に近づくよう補正速度指令値を算出することができる。これを用いて機械を制御することにより、速度および力の最大値・最小値の間で制御を行うことができる。
【００７０】
＜ライブラリプログラムおよびユーザプログラム＞
次に本実施形態の制御装置がインピーダンス制御を用いて補正速度指令値を算出する構成について説明する。一実施形態として制御装置にはインピーダンス制御による補正速度指令値の算出に適したライブラリプログラムが予め用意される。コントローラのユーザは、図示しないコントローラサポート装置を用いて当該ライブラリプログラムを読み出すようなコードを生成することができる。このようなライブラリプログラムを制御装置メーカやサードパーティが予め提供しておくことで、短い時間でインピーダンス制御による補正速度指令値を算出するようなユーザプログラムを作成することが可能となる。すなわち、ユーザプログラムは、制御対象において典型的にはインピーダンス制御による補正速度指令値を算出に用いられる。
【００７１】
図１１は、本実施形態のコントローラで実行されるライブラリプログラムの一例を示す。主として、速度の最大値、最小値を入力して補正速度指令値を算出するファンクションブロックと、力の最大値、最小値を入力して補正速度指令値を算出するファンクションブロックを含む。これらのファンクションブロックの一部または全部はその実行順序が到来すると、対応するライブラリプログラムを読み出し、読み出したライブラリプログラムを実行することを指定するための命令である。言い換えれば各ファンクションブロックが対応するプログラムの実態であるライブラリプログラムが予め用意されており、プロセッサはプログラムに従ってライブラリプログラムを適宜読み出して実行することとなる。以下、各ファンクションブロックの機能について説明をする。
【００７２】
図１１を参照してインピーダンス制御ファンクションブロックは、速度現在値、力現在値、速度目標値、力目標値、比を入力として備える。また速度の最大値、最小値、即応性をさらに入力として備える。比が固定値として入力された場合には、インピーダンス制御ファンクションブロックは、起動されると、入力されている速度現在値、力現在値、速度目標値、力目標値、と比を用いて補正速度指令値を算出する。算出した補正速度指令値について最大値、最小値と比較し、範囲内にある場合は補正速度指令値を出力する。範囲内にない場合には最大値または最小値を出力する。
【００７３】
上述したようなインピーダンス制御ファンクションブロック、およびそれを実現するためのライブラリプログラムが提供されることで、作成工数をかけることなく、インピーダンス制御を用いて速度誤差と力誤差との比が所定の関係になるように制御するプログラムが作成できる。
【００７４】
＜適用例＞
本発明のコントローラは、速度および力を所定に比率で制御する機械のアプリケーションで好適に利用することができる。たとえば、成形機においては成形対象が粘性が高いもの対象から粘性が低い対象に代わったとしても、力の上限値・下限値を設定することで速度と力を制御することにより、制御することが可能となる。
【００７５】
また巻き線機についても、所定の最大値・最小値の範囲内の巻き取り速度と巻き取り対象物にかかる力の上限値を設定することにより、所定範囲内の速度で制御をしつつ、力の上限値を超えないような制御に好適に利用できる。
【００７６】
これらの例では、従来の装置であれば加工対象や加工条件を変更することにより、速度指令・力の指令に関して制御をパラメータを設定する必要があったが、本発明のコントローラを適用することによりパラメータの再設定を行う必要がなくなるという効果を称する。
【符号の説明】
【００７７】
１００  コントローラ（制御装置）
１０６  メインメモリ（記憶部）
１３２２  補正演算部
【図１】
0006519458.tif 000010
【図２】
0006519458.tif 000011
【図３】
0006519458.tif 000012
【図４】
0006519458.tif 000013
【図５】
0006519458.tif 000014
【図６】
0006519458.tif 000015
【図７】
0006519458.tif 000016
【図８】
0006519458.tif 000017
【図９】
0006519458.tif 000018
【図１０】
0006519458.tif 000019
【図１１】
0006519458.tif 000020