加減速パターンをなまらせるための所定の各軸フィルタ処理を実施し、サーボ処理部30に出力する。各軸フィルタ処理部24における各軸フィルタ処理についても後で詳細に説明する。次に、図2を参照して、サーボ処理部30を説明する。【0029】サーボ処理部30はロボットの各軸毎に設けられており、ロボット各軸が軌道生成部20からの各軸指令値に精確に追従するようフィードバック制御する制御系として構成される。サーボ処理部30は、各軸指令値(x)からサーボモータMのエンコーダ31の位置検出値zを減算しその偏差信号eを出力する減算器32と、偏差信号eを増幅するサーボ増幅器33と、各軸指令値(x)の変化に対して一次遅れで応答するロボット各軸の速度を各軸指令値(x)に基づき前倒しで補正するよう補償値wを出力するフィードフォワード制御器34と、サーボ増幅器33の出力信号vに補償値wを加算してサーボモータMに出力する加算器35とから構成される。次に、前述したマトリクスフィルタ処理部22におけるマトリクスフィルタ処理を説明する。第1軌道計算部21により生成される補間指令値Hiは、4列4行の行列を用いて式1のように表すことができる。【0033】ここで、この行列を構成しているベクトルP(Px,Py,Pz)は、ロボット可動部、例えばロボットアーム先端の位置を表し、またこの行列を構成している式2で表される3列3行の行列Sは、ロボット可動部、ロボットアームの姿勢を表している。【0035】いま、時刻tにおける補間指令値Htは、前述したように、位置ベクトルPtと姿勢行列Stとを用いて式3のように表される。【0037】そして、補間指令値の現在値Htに対して、この現在値Htを含む直近n個の補間指令値Ht、Ht-1、...、Ht-(n-1)を平均化するようにして、ロボット可動部の加減速パターンをなまらせるためのマトリクスフィルタ処理を実施する。このとき、マトリクスフィルタ処理部22の出力信号Huを構成する位置データPiの平均値Puは、下記式(4)で算出される。(4)また、姿勢データSiの平均値Suは下記各式(5)、(6)、(7)で算出される。【0042】ただし、式(5)、(6)、(7)中のサンプル数(m)は、位置データのサンプル数(n)と一致させてもよい。【0043】なお、姿勢行列Sは、オイラー角O,A,Tに置き換えることもできる。そこで、演算処理の都合上、姿勢に関する補間指令値の平均化に際しては、このオイラー角O,A,Tに置き換えたものを用いることもできる。当然のことながら、姿勢行列SをRPYに置き換えて平均化処理を行ってもよい。【0044】そして、この位置ベクトルPおよびオイラー角O,A,Tを用いて平均化した後の、時刻uにおける位置の補間指令値Pu、および姿勢の補間指令値Ou,Au,Tuは、それぞれ式(8)、(9)、(10)、(11)により表される。式(8)、(9)、(10)、(11)中のn,mはそれぞれサンプル数を表す。ここで、サンプル数m,nは等しくてもよく、あるいは異なっていてもよい。(11)ここで、位置と姿勢の補間指令値の平均化の際に、両者のサンプル数が異なる場合は、サンプル数が少ない方のサンプリング時間帯が、サンプル数が多い方のサンプリング時間帯に包含されるようにしてサンプリングを行うことは、特許第2747802号公報と同様である。次に、各軸フィルタ処理部24が実施する各軸フィルタ処理につき説明する。各軸フィルタ処理部24は、各軸指令値の現在値Jtに対して、この現在値Jtを含む直近q個の各軸指令値Jt、Jt-1、...、Jt-(q-1)を平均化し、この平均値Juをサーボ処理部30に出力する。このとき、平均値Juは、下記式(12)で算出される。よる補間動作の実行時、第1軌道計算部21が生成する補間指令値に対して、加減速パターンをなまらせるためのマトリクスフィルタ処理を実施した後、第2軌道計算部23において、前記フィルタ処理された補間指令値に基づき各軸指令値を生成するので、ロボットの動作を滑らかなものとすることができるとともに、サーボ処理部30において例えばフィードフォワード制御を実施することによって補間指令値による直線軌道に対して精確(円弧軌道の場合は、ほぼ精確)に追従するよう制御することが可能となる。【0048】また、精密な軌道追従性が問題とならない各軸補間動作においては、第2軌道計算部23において生成された各軸指令値に対して簡単な演算処理の各軸フィルタ処理を実施するようにして、加減速パターンをなまらせるので、ロボットの動作を滑らかなものとしつつハードウェアにかかる負荷を軽減して、動作の高速化を図ることも可能となる。実施形態2本発明の実施形態2のロボット制御装置は、図3に示す重ね合わせ処理部25を、実施形態1のロボット制御装置Aの軌道生成部20に付加して設けたものでその余の構成は同一とされる。より点Eから点Fに移動し、各軸補間動作により点Fから点Gに移動する場合を考える。この場合、実施形態1の制御装置Aでは、点Eと点Fの2点で補間動作の切り替え、すなわちフィルタ処理の切り替えが行われる。このため、図5に示すように、点Eおよび点Fでアーム先端を一旦停止させる必要が生じる。́に入った時点に、点Eから点Fへの補間動作を重ね合わせて開始するようにして、ロボット可動部を停止させることなく例えば内回りの軌道L2に沿って滑らかに移動させることが可能となる。́に入った時点に、第1軌道計算部21に対して、各教示点E、F間に対応する、直線補間による補間指令値の生成を開始するように指示する。第1軌道計算部21により生成された各補間指令値は、マトリクスフィルタ処理部22において前掲のフィルタ処理が施されて、第2軌道計算部23に出力される。第2軌道計算部23は、各教示点D、Eの教示データに基づき各軸補間動作による各軸指令値JAを生成し、各軸フィルタ処理部24に出力すると同時に、マトリクスフィルタ処理部22からの各教示点E、F間に対応する補間指令値に基づき各軸指令値JBを生成し、重ね合わせ処理部25に出力する。各軸フィルタ処理部24は、第2軌道計算部23からの各軸指令値JAに対して前掲の各軸フィルタ処理を施して、重ね合わせ処理部25に出力する。重ね合わせ処理部25は、各軸フィルタ処理部24からの各軸指令値JAと第2軌道計算部23からの各軸指令値JBとに対して下記の重ね合わせ処理を実施し、この処理結果である各軸指令値Jnをサーボ処理部30に出力する。(15)重ね合わせ処理後の各軸指令値Jnは、下記式(16)で算出される。JCとに対して、下記式(17)による重ね合わせ処理が実施されて各軸指令値Jmが生成される。(17)ただし、JFは点Fにおける各軸値を示す。よる補間動作と各軸補間動作による補間動作とを重ね合わせて実施するものとしているので、補間動作の切り替え点においてロボットを一旦停止させる必要がなく、滑らかに動作させることが可能となる。以上、本発明を各実施形態により説明したが、本発明はこれら実施形態に限定されるものではなく、種々改変が可能である。実施形態では、補間動作を切り替えるときに重ね合わせ処理を実施するものとしたが、補間動作の切り替えが行われない場合であっても、ロボット可動部の移動経路が折れ線的に変化する各教示点において重ね合わせ処理を実施して、動作を滑らかなものとすることができる。【図1】本発明の実施形態1に係るロボットの制御方法に用いる制御装置のブロック図である。【図2】同装置のサーボ処理部の詳細を示すブロック図である。【図3】本発明の実施形態2に係るロボットの制御方法に用いる制御装置要部を示すブロック図である。【図4】実施形態1の装置における問題点を説明するための模式図であり、ロボットの動作経路を示す。【図5】実施形態1の装置における問題点を説明するための模式図であり、ロボットの動作速度の時系列変化を示す。【図6】実施形態2の装置の特徴的動作を説明するための模式図である。【図7】従来技術における問題点を説明するための模式図である。【図8】従来技術における問題点を説明するためのブロック図である。【図9】従来技術における改良例を示すブロック図である。【図10】同改良例における問題点を説明するための模式図であり、同(a)は、ロボット可動部の加減速パターンを示し、同(b)はその加速度の時系列変化を示し、同(c)はそのジャーク値の時系列変化を示す。※以下のタグをホームページ中に張り付けると便利です。収集に関しては慎重に行っておりますが、もし掲載内容に関し異議がございましたらお問い合わせください、速やかに情報を削除させていただきます。