【発明が解決しようとする課題】
【0004】
従来例とは異なり、本出願人は、一定周期(例えば、0.5msec〜1msec程度の周期)で、マスタ装置の各軸(本明細書を通して「制御軸」を意味する。)への指令値(または各軸の測定された現在値)に基づいてスレーブ装置の各軸への指令値を演算によって求めて、マスタ装置とスレーブ装置とを同期させて制御する方式を開発している。これにより、マスタ装置とスレーブ装置とを精度良く同期させることができる。
【0005】
このように一定周期でマスタ装置とスレーブ装置とを同期させて制御する場合、演算する軸数に比例して、マスタ装置の位置とスレーブ装置の位置とを予め定められた対応関係に保つ同期演算(例えば、マスタ装置の位置に対して予め定められた関数の変換を行う演算)のための計算量が増大する。また、マスタ装置の軸数とスレーブ装置の軸数とが互いに異なる場合、マスタ装置の各軸への指令値(または各軸の測定された現在値)からスレーブ装置の各軸への指令値を求める過程で、マスタ装置の座標系からスレーブ装置の座標系への座標変換を行う必要もある。このため、計算量を削減することが求められる。
【0006】
そこで、この発明の課題は、一定周期でマスタ装置とスレーブ装置とを同期させて制御する制御装置であって、計算量を削減できるものを提供することにある。また、この発明の課題は、そのような制御装置のための制御方法およびプログラムを提供することにある。
【課題を解決するための手段】
【0007】
上記課題を解決するため、この開示の制御装置は、
マスタ装置の軸数がスレーブ装置の軸数よりも少ない場合に、一定周期で上記マスタ装置と上記スレーブ装置とを同期させて制御する制御装置であって、
上記一定周期で、上記マスタ装置の各軸への指令値または各軸の測定された現在値に基づいて、上記スレーブ装置の各軸への指令値を演算によって求める演算部を備え、
上記演算部は、
上記一定周期で上記マスタ装置の各軸への指令値または各軸の測定された現在値に対して、上記マスタ装置の位置と上記スレーブ装置の位置とを
、曲線で表される関数を含む予め定められた対応関係に保つための同期演算を行う同期演算部と、
上記同期演算が行われた後、この同期演算によって得られた同期演算結果値に対して上記マスタ装置の座標系から上記スレーブ装置の座標系への
、位置変化を表すベクトルの射影を求めることに相当する座標変換を行う座標変換部と
を備えたことを特徴とする。
【0008】
本明細書で、マスタ装置、スレーブ装置の「軸」とは、それぞれ制御軸を意味する。マスタ装置、スレーブ装置としては、例えばベルトコンベアのような1軸の装置、X−Yテーブルのような2軸の装置、4軸水平多関節ロボットのような4軸の装置、6軸多関節ロボットのような6軸の装置など、様々な軸数の装置が対象となり得る。ただし、この発明は、マスタ装置の軸数がスレーブ装置の軸数よりも少ない場合に適用される。
【0009】
「同期演算」とは、上記一定周期で行われ、上記マスタ装置の位置と上記スレーブ装置の位置とを予め定められた対応関係に保つ演算を意味する。「予め定められた対応関係」とは、例えば、マスタ装置の位置の変化に対して、スレーブ装置の位置が予め定められた関係(例えば、カム曲線を表す関数)に従って変化(加速または減速を含む。)するような関係を指す。上記マスタ装置、上記スレーブ装置の「位置」とは、並進成分および/または回転成分を含む意味である。
【0010】
「座標変換」とは、上記マスタ装置の座標系(例えば、XYZ座標系とする。)を基準とした位置から上記スレーブ装置の座標系(例えば、xyz座標系とする。)を基準とした位置への変換を指す。例えば、上記マスタ装置の位置(または上記同期演算結果値)の変化が上記スレーブ装置のxyz座標系で斜めのベクトル(x,y,z成分がいずれもゼロでない)に相当する場合、「座標変換」とは、そのベクトルの射影(x,y,z成分)を求めることに相当する。
【0011】
この開示の制御装置では、演算部は、一定周期で、上記マスタ装置の各軸への指令値または各軸の測定された現在値に基づいて、上記スレーブ装置の各軸への指令値を演算によって求める。この過程で、上記演算部の同期演算部は、まず、一定周期で上記マスタ装置の各軸への指令値または各軸の測定された現在値に対して、上記マスタ装置の位置と上記スレーブ装置の位置とを
、曲線で表される関数を含む予め定められた対応関係に保つための同期演算を行う。
この同期演算は、例えば上記予め定められた対応関係が曲線に従う演算であれば相当の計算量を要するが、上記マスタ装置の軸数が上記スレーブ装置の軸数よりも少ない場合は、問題にはなり難い。この後
(上記同期演算が行われた後)、上記演算部の座標変換部は、この同期演算によって得られた同期演算結果値に対して上記マスタ装置の座標系から上記スレーブ装置の座標系への
、位置変化を表すベクトルの射影を求めることに相当する座標変換を行う。これによって、上記スレーブ装置の各軸への指令値が求められる。この座標変換は、例えば、上記同期演算結果値の変化が上記スレーブ装置の座標系(例えば、xyz座標系とする。)で斜めのベクトル(x,y,z成分がいずれもゼロでない)に相当する場合、そのベクトルの射影(x,y,z成分)を求めることに相当する。したがって、上記スレーブ装置の軸数が比較的多くても、計算が比較的簡単で済む。したがって、この制御装置によれば、上記マスタ装置の各軸への指令値(または各軸の測定された現在値)から上記スレーブ装置の各軸への指令値を求める過程で、計算量を削減できる。
【0012】
別の局面では、この開示の制御方法は、
マスタ装置の軸数がスレーブ装置の軸数よりも少ない場合に、一定周期で上記マスタ装置の各軸への指令値または各軸の測定された現在値に基づいて上記スレーブ装置の各軸への指令値を演算によって求めて、上記マスタ装置と上記スレーブ装置とを同期させて制御する制御方法であって、
上記一定周期で上記マスタ装置の各軸への指令値または各軸の測定された現在値に対して、上記マスタ装置の位置と上記スレーブ装置の位置とを
、曲線で表される関数を含む予め定められた対応関係に保つための同期演算を行った後、
この同期演算によって得られた同期演算結果値に対して上記マスタ装置の座標系から上記スレーブ装置の座標系への
、位置変化を表すベクトルの射影を求めることに相当する座標変換を行う
ことを特徴とする。
【0013】
この開示の制御方法によれば、上記マスタ装置の各軸への指令値(または各軸の測定された現在値)から上記スレーブ装置の各軸への指令値を求める過程で、計算量を削減できる。
【0014】
さらに別の局面では、この開示のプログラムは、上記制御方法をコンピュータに実行させるためのプログラムである。
【0015】
この開示のプログラムをコンピュータに実行させることによって、上記制御方法を実施することができる。