JP3023432B2 - ロボット制御装置 - Google Patents
ロボット制御装置Info
- Publication number
- JP3023432B2 JP3023432B2 JP3311019A JP31101991A JP3023432B2 JP 3023432 B2 JP3023432 B2 JP 3023432B2 JP 3311019 A JP3311019 A JP 3311019A JP 31101991 A JP31101991 A JP 31101991A JP 3023432 B2 JP3023432 B2 JP 3023432B2
- Authority
- JP
- Japan
- Prior art keywords
- force
- control
- force control
- work
- robot
- 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.)
- Expired - Fee Related
Links
Landscapes
- Numerical Control (AREA)
- Manipulator (AREA)
Description
【0001】
【産業上の利用分野】本発明は、ロボット制御装置に係
り、特に、グラインダがけを行う作業ロボットのよう
な、力制御を含む制御系に基づいて動作するロボット
で、且つ制御パラメータを教示装置を用いてプレイバッ
ク式にて前記制御系の教示系部分に教示・設定されるロ
ボットに適用され、ユーザが作業に要する力制御の制御
パラメータを教示・設定するとき、良好な操作性を発揮
するロボット制御装置に関するものである。
り、特に、グラインダがけを行う作業ロボットのよう
な、力制御を含む制御系に基づいて動作するロボット
で、且つ制御パラメータを教示装置を用いてプレイバッ
ク式にて前記制御系の教示系部分に教示・設定されるロ
ボットに適用され、ユーザが作業に要する力制御の制御
パラメータを教示・設定するとき、良好な操作性を発揮
するロボット制御装置に関するものである。
【0002】
【従来の技術】グラインダがけ等の力作業を行う作業ロ
ボットでは、力に関する制御と位置に関する制御が行わ
れる。従って、その制御系では、位置の制御を行うため
の構成と力の制御を行うための構成が必要となる。従来
の前記作業ロボットの制御系の例として、例えば特開昭
61−7905号に記載された「仮想コンプライアンス
制御」が知られている。通常、力制御及び位置制御を行
う作業ロボットの制御系は、制御パラメータを教示・設
定するための制御系部分(制御系の前段に位置する部分
であり、以下では「教示・設定系」という)と、設定さ
れた制御パラメータを使用し且つ与えられた方程式の下
で制御を実行する制御系部分(制御系の後段に位置する
部分で、以下では「制御実行系」という)とから構成さ
れる。教示・設定系は、ユーザのオペレータが教示装置
を操作してロボットの本体機構に対し動作を行わせるこ
とにより位置に関する制御パラメータを与えたり、必要
に応じてその他の制御パラメータを与えると、与えられ
た制御パラメータを記憶装置に格納する。制御実行系
は、実際の作業動作が開始されると、教示・設定系の記
憶装置に格納された制御パラメータを、予め定められた
手順で読出し、制御指令量を求め、フィードバック制御
を適用しつつ、作業を実行するための制御動作を実行す
る。力制御及び位置制御を行う作業ロボットの制御系に
関する公開公報等の従来文献では、上記の教示・設定系
を用いた制御パラメータの教示・設定方法については、
特別に提案される方法は存在しなかった。また、力制御
及び位置制御を行う作業ロボットの制御系についての学
術的な従来文献としては、「ロボット・マニュピレー
タ」(R.P.ポール著、吉川恒夫訳、コロナ社)が存
在する。この文献に開示される制御パラメータの設定方
法では、作業動作を規定するプログラムを作成すると
き、このプログラムの中に直接に力目標値のみを具体的
数値で与える構成をとっている。
ボットでは、力に関する制御と位置に関する制御が行わ
れる。従って、その制御系では、位置の制御を行うため
の構成と力の制御を行うための構成が必要となる。従来
の前記作業ロボットの制御系の例として、例えば特開昭
61−7905号に記載された「仮想コンプライアンス
制御」が知られている。通常、力制御及び位置制御を行
う作業ロボットの制御系は、制御パラメータを教示・設
定するための制御系部分(制御系の前段に位置する部分
であり、以下では「教示・設定系」という)と、設定さ
れた制御パラメータを使用し且つ与えられた方程式の下
で制御を実行する制御系部分(制御系の後段に位置する
部分で、以下では「制御実行系」という)とから構成さ
れる。教示・設定系は、ユーザのオペレータが教示装置
を操作してロボットの本体機構に対し動作を行わせるこ
とにより位置に関する制御パラメータを与えたり、必要
に応じてその他の制御パラメータを与えると、与えられ
た制御パラメータを記憶装置に格納する。制御実行系
は、実際の作業動作が開始されると、教示・設定系の記
憶装置に格納された制御パラメータを、予め定められた
手順で読出し、制御指令量を求め、フィードバック制御
を適用しつつ、作業を実行するための制御動作を実行す
る。力制御及び位置制御を行う作業ロボットの制御系に
関する公開公報等の従来文献では、上記の教示・設定系
を用いた制御パラメータの教示・設定方法については、
特別に提案される方法は存在しなかった。また、力制御
及び位置制御を行う作業ロボットの制御系についての学
術的な従来文献としては、「ロボット・マニュピレー
タ」(R.P.ポール著、吉川恒夫訳、コロナ社)が存
在する。この文献に開示される制御パラメータの設定方
法では、作業動作を規定するプログラムを作成すると
き、このプログラムの中に直接に力目標値のみを具体的
数値で与える構成をとっている。
【0003】
【発明が解決しようとする課題】力制御及び位置制御が
行われる作業ロボットの制御系では、力制御を含んでい
るので、作業全体が複雑な工程から構成される。そのた
めロボット制御装置で設定される制御パラメータには複
数の制御パラメータが用意され、且つこれらの複数の制
御パラメータは、各種の作業条件を考慮して、及び一連
の全体作業における作業各部ごとの事情を配慮して、制
御パラメータの間を関連づけて複数の制御パラメータを
一組又は一かたまりの状態で設定される必要がある。ま
た多数の制御パラメータが、ロボット制御装置の教示・
設定系の記憶部に格納された後、実際の作業において、
当該記憶部から所要の多数の制御パラメータを取り出し
て、制御実行系にセットするときにも、多数の制御パラ
メータを迅速にセットできることが望ましい。これによ
って、作業対象であるワークに対してきめの細かい制御
を実行することができる。このことは、反対に、ワーク
に対してきめの細かい制御を実行するためには、制御実
行系の前段階であって制御系全体で前段に位置する教示
・設定系において、相互に関連を有する多数の制御パラ
メータをどのように教示、設定すれば、ユーザにとって
最適に利用できるのかという問題を提起する。また、制
御実行系が、教示・設定系に格納された多数の制御パラ
メータを読出して使用し、実際に作業を実行するための
再生処理を行う場合、多数の制御パラメータを制御実行
系にセットしなければならないときに、多数の制御パラ
メータの設定値を一つずつ制御実行系のパラメータ入力
部に設定する構成では、時間がかかり、ロボット機構の
動作が遅くなるという不具合が生じる。特に、作業の複
数の区間のそれぞれで制御条件を変更して作業を行うも
のでは、各区間ごとに多数の制御パラメータのセットを
逐一行わなければならず、ロボット機構の動作の遅さが
顕著になる。上記の技術的な各意味で、前述した従来技
術はいずれも、ユーザの立場から見れば十分に満足でき
る制御系に関する技術を提供していない。本発明の目的
は、作業の教示及びこの教示に伴う制御パラメータの設
定の各操作において、力制御を含む制御に必要とされる
多くの制御パラメータを、一連の作業における各作業状
況に応じて一括的に取り扱うことができ、またユーザの
プログラミング操作上の利便性に配慮して、一組の多数
の制御パラメータの設定作業をできる限り簡単にしたロ
ボット制御装置を提供することにある。
行われる作業ロボットの制御系では、力制御を含んでい
るので、作業全体が複雑な工程から構成される。そのた
めロボット制御装置で設定される制御パラメータには複
数の制御パラメータが用意され、且つこれらの複数の制
御パラメータは、各種の作業条件を考慮して、及び一連
の全体作業における作業各部ごとの事情を配慮して、制
御パラメータの間を関連づけて複数の制御パラメータを
一組又は一かたまりの状態で設定される必要がある。ま
た多数の制御パラメータが、ロボット制御装置の教示・
設定系の記憶部に格納された後、実際の作業において、
当該記憶部から所要の多数の制御パラメータを取り出し
て、制御実行系にセットするときにも、多数の制御パラ
メータを迅速にセットできることが望ましい。これによ
って、作業対象であるワークに対してきめの細かい制御
を実行することができる。このことは、反対に、ワーク
に対してきめの細かい制御を実行するためには、制御実
行系の前段階であって制御系全体で前段に位置する教示
・設定系において、相互に関連を有する多数の制御パラ
メータをどのように教示、設定すれば、ユーザにとって
最適に利用できるのかという問題を提起する。また、制
御実行系が、教示・設定系に格納された多数の制御パラ
メータを読出して使用し、実際に作業を実行するための
再生処理を行う場合、多数の制御パラメータを制御実行
系にセットしなければならないときに、多数の制御パラ
メータの設定値を一つずつ制御実行系のパラメータ入力
部に設定する構成では、時間がかかり、ロボット機構の
動作が遅くなるという不具合が生じる。特に、作業の複
数の区間のそれぞれで制御条件を変更して作業を行うも
のでは、各区間ごとに多数の制御パラメータのセットを
逐一行わなければならず、ロボット機構の動作の遅さが
顕著になる。上記の技術的な各意味で、前述した従来技
術はいずれも、ユーザの立場から見れば十分に満足でき
る制御系に関する技術を提供していない。本発明の目的
は、作業の教示及びこの教示に伴う制御パラメータの設
定の各操作において、力制御を含む制御に必要とされる
多くの制御パラメータを、一連の作業における各作業状
況に応じて一括的に取り扱うことができ、またユーザの
プログラミング操作上の利便性に配慮して、一組の多数
の制御パラメータの設定作業をできる限り簡単にしたロ
ボット制御装置を提供することにある。
【0004】
【課題を解決するための手段】本発明に係るロボット制
御装置は、被対象物に対して力作業を行うとき、教示さ
れた位置制御用位置パラメータと力制御用の複数の力制
御パラメータとが使用され、力制御パラメータは少なく
とも力制御座標系指定、送り速度、力目標値、仮想ばね
定数、仮想粘性係数、力の不感帯を含むように構成さ
れ、上記力作業は、被対象物の被作業部位に対応して力
作業の条件が異なるように設定された複数の力作業区間
から構成され、ロボット制御装置は、力制御を実行する
前に、当該力制御の実行に使用される、前記位置パラメ
ータと前記力制御パラメータからなる複数の制御パラメ
ータを準備する教示・設定手段を備える。この教示・設
定手段は、位置パラメータを格納する位置パラメータ格
納手段と、1つの組を形成する複数の力制御パラメータ
を、力作業区間ごとに対応する1つの力制御パターンと
して格納し、複数の前記力制御パターンを格納する力制
御パターン格納手段とを含んでいる。さらにロボット制
御装置は、力作業をロボットに実行させる制御実行手段
を備え、この制御実行手段は、力作業のための位置制御
と力制御を行う力制御演算手段と、位置パラメータ格納
手段から力制御演算手段へ位置パラメータを転送する位
置パラメータ転送手段と、力作業区間に応じて、力制御
パターン格納手段から複数の力制御パターンのうちの1
つを取出して力制御演算手段へを転送し、力制御演算手
段に設けられた複数の力制御パラメータ入力手段の各々
にセットするパターン選択手段とを含む。前記の構成に
おいて、力作業区間のいずれかに応じて複数の力制御パ
ラメータを組として設定するための教示操作器を備えて
いる。複数の関節部を備えるロボット機構部と、このロ
ボット機構部に取り付けた作業ツールと、ロボット機構
部に設けられた複数の関節部のそれぞれに配置され、ロ
ボット機構部を動作させる駆動手段とを含むロボットに
適用され、駆動手段の各々の動作を制御してロボット機
構を動作させ、作業ツールを任意の位置に移動してワー
クに対し所定の力作業を行わせるロボット制御装置であ
り、力制御を実行するための力制御演算手段を有し、こ
の力制御演算手段は、作業ツールの位置を検出する位置
検出手段と作業ツールに加わる力を検出する力検出手段
のそれぞれの検出信号を入力し、これらの検出値と、予
め設定された位置及び力の目標値との偏差を求め、これ
らの偏差がゼロになるように力制御のための制御指令値
を出力するロボット制御装置であり、力制御により上記
ワークに対して行われる力作業は、ワークの被作業部位
に対する力作業の条件が異なるように設定された複数の
力作業区間から構成され、力制御演算手段にセットされ
る各種制御パラメータのうち複数の力制御パラメータ
を、複数の力作業区間の各々に対応する1つの力制御パ
ターンとして、一括して教示、設定することが可能な教
示・設定手段を備えるように構成される。前記の構成に
おいて、好ましくは、教示・設定手段は、ユーザプログ
ラムを格納するユーザプログラム格納部と、力作業区間
ごとの複数の力制御パラメータをそれぞれ力制御パター
ンとして一括して格納する力制御パターン格納部を含
む。前記の構成において、好ましくは、教示・設定手段
と力制御演算手段との間に、ユーザプログラム格納部か
らパターン選択命令を取り出すユーザプログラム解析部
と、パターン選択命令に従って、力制御パターン格納部
に格納される複数の力制御パターンのうちのいずれかを
選択し、力制御演算手段の側に送るパターン選択部を設
けるようにした。
御装置は、被対象物に対して力作業を行うとき、教示さ
れた位置制御用位置パラメータと力制御用の複数の力制
御パラメータとが使用され、力制御パラメータは少なく
とも力制御座標系指定、送り速度、力目標値、仮想ばね
定数、仮想粘性係数、力の不感帯を含むように構成さ
れ、上記力作業は、被対象物の被作業部位に対応して力
作業の条件が異なるように設定された複数の力作業区間
から構成され、ロボット制御装置は、力制御を実行する
前に、当該力制御の実行に使用される、前記位置パラメ
ータと前記力制御パラメータからなる複数の制御パラメ
ータを準備する教示・設定手段を備える。この教示・設
定手段は、位置パラメータを格納する位置パラメータ格
納手段と、1つの組を形成する複数の力制御パラメータ
を、力作業区間ごとに対応する1つの力制御パターンと
して格納し、複数の前記力制御パターンを格納する力制
御パターン格納手段とを含んでいる。さらにロボット制
御装置は、力作業をロボットに実行させる制御実行手段
を備え、この制御実行手段は、力作業のための位置制御
と力制御を行う力制御演算手段と、位置パラメータ格納
手段から力制御演算手段へ位置パラメータを転送する位
置パラメータ転送手段と、力作業区間に応じて、力制御
パターン格納手段から複数の力制御パターンのうちの1
つを取出して力制御演算手段へを転送し、力制御演算手
段に設けられた複数の力制御パラメータ入力手段の各々
にセットするパターン選択手段とを含む。前記の構成に
おいて、力作業区間のいずれかに応じて複数の力制御パ
ラメータを組として設定するための教示操作器を備えて
いる。複数の関節部を備えるロボット機構部と、このロ
ボット機構部に取り付けた作業ツールと、ロボット機構
部に設けられた複数の関節部のそれぞれに配置され、ロ
ボット機構部を動作させる駆動手段とを含むロボットに
適用され、駆動手段の各々の動作を制御してロボット機
構を動作させ、作業ツールを任意の位置に移動してワー
クに対し所定の力作業を行わせるロボット制御装置であ
り、力制御を実行するための力制御演算手段を有し、こ
の力制御演算手段は、作業ツールの位置を検出する位置
検出手段と作業ツールに加わる力を検出する力検出手段
のそれぞれの検出信号を入力し、これらの検出値と、予
め設定された位置及び力の目標値との偏差を求め、これ
らの偏差がゼロになるように力制御のための制御指令値
を出力するロボット制御装置であり、力制御により上記
ワークに対して行われる力作業は、ワークの被作業部位
に対する力作業の条件が異なるように設定された複数の
力作業区間から構成され、力制御演算手段にセットされ
る各種制御パラメータのうち複数の力制御パラメータ
を、複数の力作業区間の各々に対応する1つの力制御パ
ターンとして、一括して教示、設定することが可能な教
示・設定手段を備えるように構成される。前記の構成に
おいて、好ましくは、教示・設定手段は、ユーザプログ
ラムを格納するユーザプログラム格納部と、力作業区間
ごとの複数の力制御パラメータをそれぞれ力制御パター
ンとして一括して格納する力制御パターン格納部を含
む。前記の構成において、好ましくは、教示・設定手段
と力制御演算手段との間に、ユーザプログラム格納部か
らパターン選択命令を取り出すユーザプログラム解析部
と、パターン選択命令に従って、力制御パターン格納部
に格納される複数の力制御パターンのうちのいずれかを
選択し、力制御演算手段の側に送るパターン選択部を設
けるようにした。
【0005】
【作用】本発明によるロボット制御装置では、ティーチ
ングプレイバック方式でのロボット動作を可能にするも
のであり、教示・設定手段と制御実行手段を含み、前段
に位置する教示・設定手段において、力作業の全体を形
成する異なる作業状況の複数の力作業区間の各々に応じ
て別々に設定する必要がある複数の力制御パラメータを
一括して教示し、設定できるようにしている。教示・設
定手段のデータ格納部としては、少なくとも、ユーザプ
ログラムを格納する部分と力制御に関する複数の制御パ
ラメータ(力制御パラメータ)を格納する部分とを含ん
でいる。この力制御に関する複数の制御パラメータを格
納する部分、すなわち力制御パターン格納部では、各力
作業区間に対応する複数の力制御パラメータを、一かた
まりとして別々に格納する。一かたまりの力制御パラメ
ータは1つの力制御パターンを構成する。各力制御パタ
ーンは、一連の作業の各状況を配慮して事前に決められ
る。そして、決められた複数の力制御パターンのそれぞ
れには、番号が付される。従って、ユーザがロボットに
教示動作を行わせ、教示操作器を用いてユーザプログラ
ムを作成するとき、各力作業区間ごとに複数の力制御パ
ターンのいずれかを選択して指定することにより、ユー
ザプログラムを作成することができる。作業区間に応じ
た力制御パターンの指定は、具体的にはパターン選択命
令としてユーザプログラムの中に含まれる。このパター
ン選択命令では、前述の力制御パターンに付した番号を
指定するだけで、プログラムを作ることができる。一
方、教示・設定手段に設定された複数の制御パラメータ
を、制御実行手段が取り出して、実際の制御を行う再生
動作のときには、パターン選択手段が、与えられたパタ
ーン選択命令に従って力制御パターンを取出し、その
後、力制御演算前処理を経由して力制御演算手段にセッ
トされる。以上のように、ユーザが所望する力制御に用
いられる複数の力制御パラメータを力制御パターンとし
て一括して教示、設定することができるので、力制御パ
ラメータを個々に教示、設定する煩わしさを回避するこ
とができ、教示操作の時間を短縮することが可能とな
る。またその後、力制御パラメータの制御実行手段への
セッティングも力制御パターンごと一括して行うことが
できるので、制御に要する時間の短縮化も達成できる。
ングプレイバック方式でのロボット動作を可能にするも
のであり、教示・設定手段と制御実行手段を含み、前段
に位置する教示・設定手段において、力作業の全体を形
成する異なる作業状況の複数の力作業区間の各々に応じ
て別々に設定する必要がある複数の力制御パラメータを
一括して教示し、設定できるようにしている。教示・設
定手段のデータ格納部としては、少なくとも、ユーザプ
ログラムを格納する部分と力制御に関する複数の制御パ
ラメータ(力制御パラメータ)を格納する部分とを含ん
でいる。この力制御に関する複数の制御パラメータを格
納する部分、すなわち力制御パターン格納部では、各力
作業区間に対応する複数の力制御パラメータを、一かた
まりとして別々に格納する。一かたまりの力制御パラメ
ータは1つの力制御パターンを構成する。各力制御パタ
ーンは、一連の作業の各状況を配慮して事前に決められ
る。そして、決められた複数の力制御パターンのそれぞ
れには、番号が付される。従って、ユーザがロボットに
教示動作を行わせ、教示操作器を用いてユーザプログラ
ムを作成するとき、各力作業区間ごとに複数の力制御パ
ターンのいずれかを選択して指定することにより、ユー
ザプログラムを作成することができる。作業区間に応じ
た力制御パターンの指定は、具体的にはパターン選択命
令としてユーザプログラムの中に含まれる。このパター
ン選択命令では、前述の力制御パターンに付した番号を
指定するだけで、プログラムを作ることができる。一
方、教示・設定手段に設定された複数の制御パラメータ
を、制御実行手段が取り出して、実際の制御を行う再生
動作のときには、パターン選択手段が、与えられたパタ
ーン選択命令に従って力制御パターンを取出し、その
後、力制御演算前処理を経由して力制御演算手段にセッ
トされる。以上のように、ユーザが所望する力制御に用
いられる複数の力制御パラメータを力制御パターンとし
て一括して教示、設定することができるので、力制御パ
ラメータを個々に教示、設定する煩わしさを回避するこ
とができ、教示操作の時間を短縮することが可能とな
る。またその後、力制御パラメータの制御実行手段への
セッティングも力制御パターンごと一括して行うことが
できるので、制御に要する時間の短縮化も達成できる。
【0006】
【実施例】以下に、本発明の実施例を添付図面に基づい
て説明する。図1は主に本発明に係るロボット制御装置
のソフト構成を概念的に表すブロック構成図で、この図
1には、更に機械的駆動部及びセンサ部等のハード構成
をも付加して示している。図2は、力制御演算部の具体
的構成の一例を示すブロック図、図3は、ロボット制御
装置を実現するコンピュータのハード構成を示すブロッ
ク図である。
て説明する。図1は主に本発明に係るロボット制御装置
のソフト構成を概念的に表すブロック構成図で、この図
1には、更に機械的駆動部及びセンサ部等のハード構成
をも付加して示している。図2は、力制御演算部の具体
的構成の一例を示すブロック図、図3は、ロボット制御
装置を実現するコンピュータのハード構成を示すブロッ
ク図である。
【0007】図1に示した構成において、ロボット機構
1は、ロボット本体であり、機械的機構部と、この機械
的機構部の各可動部(関節部)に配置される駆動装置
と、当該機械的機構部のアーム先部に取り付けられた作
業ツール(一般的に手先効果器が含まれる)とから構成
される。ロボット機構1は、その各駆動装置で、力制御
演算部3から与えられるロボット機構1の姿勢及び動作
を決定するための各種制御信号をサーボアンプ2を通し
て受取り、全体として制御信号に従って動作し、作業ツ
ールを用いて、図示しないワークに対して必要な作業を
実行する。この作業ツールによる作業動作の中には、力
制御による動作が含まれる。従って、作業ツールがワー
クに対して力作業を実行するとき、作業ツールは当該ワ
ークから反作用としての力を受ける。作業ツールは、そ
の取付け構造上、力センサ4に固定される。従って作業
ツールに加わる力は、力センサ4によって検出される。
力センサ4で検出された力データは力制御演算部3に送
給され、その後の力制御における制御状況に関するデー
タとして使用される。また同様にして、ロボット機構1
の各可動部には移動量を検出するためのセンサを備えて
おり、対応する駆動装置の駆動により可動部が動作した
とき、各センサはその移動量を測定し、サーボアンプ2
を介して力制御演算部3に測定データを送給する。これ
らの移動データは、現実の位置データとしてその後の力
制御及び位置制御に使用される。
1は、ロボット本体であり、機械的機構部と、この機械
的機構部の各可動部(関節部)に配置される駆動装置
と、当該機械的機構部のアーム先部に取り付けられた作
業ツール(一般的に手先効果器が含まれる)とから構成
される。ロボット機構1は、その各駆動装置で、力制御
演算部3から与えられるロボット機構1の姿勢及び動作
を決定するための各種制御信号をサーボアンプ2を通し
て受取り、全体として制御信号に従って動作し、作業ツ
ールを用いて、図示しないワークに対して必要な作業を
実行する。この作業ツールによる作業動作の中には、力
制御による動作が含まれる。従って、作業ツールがワー
クに対して力作業を実行するとき、作業ツールは当該ワ
ークから反作用としての力を受ける。作業ツールは、そ
の取付け構造上、力センサ4に固定される。従って作業
ツールに加わる力は、力センサ4によって検出される。
力センサ4で検出された力データは力制御演算部3に送
給され、その後の力制御における制御状況に関するデー
タとして使用される。また同様にして、ロボット機構1
の各可動部には移動量を検出するためのセンサを備えて
おり、対応する駆動装置の駆動により可動部が動作した
とき、各センサはその移動量を測定し、サーボアンプ2
を介して力制御演算部3に測定データを送給する。これ
らの移動データは、現実の位置データとしてその後の力
制御及び位置制御に使用される。
【0008】一点鎖線で示されたブロック5が、ロボッ
ト制御装置を指している。本発明に係るロボット制御装
置が適用されるロボットの構成は、ティーチングプレイ
バック(教示再生)方式である。従って図1のロボット
制御装置5は、複数の制御パラメータの教示及び設定に
関係する構成部分(前述の教示・設定系に対応)と、設
定された複数の制御パラメータを取り出して制御動作を
実行する構成部分(前述の制御実行系に対応)とから構
成される。ロボット制御装置5において、教示プログラ
ム及びデータ等の流れに関して、図中左側の前段部に教
示・設定系が位置し、右側の後段部に制御実行系が位置
する。すなわち、教示・設定系は力制御パターン格納部
6、ユーザプログラム格納部7、位置パラメータ格納部
8から構成され、他方、制御実行系は、ユーザプログラ
ム解析部10、パターン選択部11、位置パラメータ転
送部12、力制御演算前処理部13、前記力制御演算部
3から構成される。力制御パターン格納部6、ユーザプ
ログラム格納部7、位置パラメータ格納部8のそれぞれ
には、ユーザにおけるオペレータが、ロボット制御装置
5を備えるロボット機構1に対して所要の作業(作業ツ
ールの動作に関し位置制御と力制御が要求される作業)
を実行させようとする場合に、教示操作を行うことによ
り、当該作業の制御に必要な力制御及び位置制御の各制
御パラメータに関するデータ及び必要なユーザプログラ
ムが格納される。オペレータによる教示操作では、例え
ばハンディタイプの教示操作器9が使用される。この教
示操作器9は、プログラム言語を用いて制御指令と複数
のデータを入力するための入力機能部と、所定の表示面
積を有し且つオペレータが入力された制御指令等の内容
を視覚で確認するための表示機能部9aを有している。
この教示操作器9を用いることにより、本来の作業の前
に、当該作業を倣う如くロボット機構1に試し動作を行
わせるとき、複数の制御パラメータに関し作業中のそれ
ぞれの動作区間で必要とされるデータ値等を、前記の力
制御パターン格納部6、ユーザプログラム格納部7、位
置パラメータ格納部8のそれぞれに与えることができ
る。力制御パターン格納部6では、図示例で明らかなよ
うに、作業の各箇所(又は各区間)の状況に対応して決
定される複数の制御パラメータのデータを、対応させて
一括して(一組のセットとして、この一組のセットを
「力制御パターン」という)格納している。従って、そ
れぞれ複数の制御パラメータを含む複数の力制御パター
ンが、別々に格納されている。また位置パラメータ格納
部8は、作業における作業ツールの移動位置を位置デー
タとして格納する。教示作動時における、オペレータに
よる教示操作器9の操作の仕方及び教示操作器9の動作
(データの入力方法及び入力データの表示方法を含む)
の態様、更に力制御パターン格納部6、ユーザプログラ
ム格納部7、位置パラメータ格納部8の各データ格納態
様については、後で説明する。なお上記の構成におい
て、教示操作器9は、ロボット制御装置5に対して着脱
自在な構成とすることもできる。また、力制御パターン
格納部6に格納された複数の力制御パターンのいずれか
を選択し、力制御演算前処理部13に送給するパターン
選択部11と、位置パラメータ格納部8に格納される位
置パラメータを力制御演算前処理部13に転送する位置
パラメータ転送部12と、力制御演算前処理部13と、
前述の力制御演算部3は、制御実行時に、ユーザプログ
ラム格納部7からユーザプログラムを取出し、解析する
ユーザプログラム解析部10に基づいて得られたユーザ
プログラムに応じて起動される。
ト制御装置を指している。本発明に係るロボット制御装
置が適用されるロボットの構成は、ティーチングプレイ
バック(教示再生)方式である。従って図1のロボット
制御装置5は、複数の制御パラメータの教示及び設定に
関係する構成部分(前述の教示・設定系に対応)と、設
定された複数の制御パラメータを取り出して制御動作を
実行する構成部分(前述の制御実行系に対応)とから構
成される。ロボット制御装置5において、教示プログラ
ム及びデータ等の流れに関して、図中左側の前段部に教
示・設定系が位置し、右側の後段部に制御実行系が位置
する。すなわち、教示・設定系は力制御パターン格納部
6、ユーザプログラム格納部7、位置パラメータ格納部
8から構成され、他方、制御実行系は、ユーザプログラ
ム解析部10、パターン選択部11、位置パラメータ転
送部12、力制御演算前処理部13、前記力制御演算部
3から構成される。力制御パターン格納部6、ユーザプ
ログラム格納部7、位置パラメータ格納部8のそれぞれ
には、ユーザにおけるオペレータが、ロボット制御装置
5を備えるロボット機構1に対して所要の作業(作業ツ
ールの動作に関し位置制御と力制御が要求される作業)
を実行させようとする場合に、教示操作を行うことによ
り、当該作業の制御に必要な力制御及び位置制御の各制
御パラメータに関するデータ及び必要なユーザプログラ
ムが格納される。オペレータによる教示操作では、例え
ばハンディタイプの教示操作器9が使用される。この教
示操作器9は、プログラム言語を用いて制御指令と複数
のデータを入力するための入力機能部と、所定の表示面
積を有し且つオペレータが入力された制御指令等の内容
を視覚で確認するための表示機能部9aを有している。
この教示操作器9を用いることにより、本来の作業の前
に、当該作業を倣う如くロボット機構1に試し動作を行
わせるとき、複数の制御パラメータに関し作業中のそれ
ぞれの動作区間で必要とされるデータ値等を、前記の力
制御パターン格納部6、ユーザプログラム格納部7、位
置パラメータ格納部8のそれぞれに与えることができ
る。力制御パターン格納部6では、図示例で明らかなよ
うに、作業の各箇所(又は各区間)の状況に対応して決
定される複数の制御パラメータのデータを、対応させて
一括して(一組のセットとして、この一組のセットを
「力制御パターン」という)格納している。従って、そ
れぞれ複数の制御パラメータを含む複数の力制御パター
ンが、別々に格納されている。また位置パラメータ格納
部8は、作業における作業ツールの移動位置を位置デー
タとして格納する。教示作動時における、オペレータに
よる教示操作器9の操作の仕方及び教示操作器9の動作
(データの入力方法及び入力データの表示方法を含む)
の態様、更に力制御パターン格納部6、ユーザプログラ
ム格納部7、位置パラメータ格納部8の各データ格納態
様については、後で説明する。なお上記の構成におい
て、教示操作器9は、ロボット制御装置5に対して着脱
自在な構成とすることもできる。また、力制御パターン
格納部6に格納された複数の力制御パターンのいずれか
を選択し、力制御演算前処理部13に送給するパターン
選択部11と、位置パラメータ格納部8に格納される位
置パラメータを力制御演算前処理部13に転送する位置
パラメータ転送部12と、力制御演算前処理部13と、
前述の力制御演算部3は、制御実行時に、ユーザプログ
ラム格納部7からユーザプログラムを取出し、解析する
ユーザプログラム解析部10に基づいて得られたユーザ
プログラムに応じて起動される。
【0009】次に、教示・設定系の各部の構成及び作用
について詳述する。力制御パターン格納部6に格納され
る複数の力制御パターンのそれぞれには、例えば図6に
示すように、複数の制御パラメータの設定値を組(一か
たまり)又はセットとして一括して格納されている。こ
れらの制御パラメータは、力制御座標系指定、送り速
度、力目標値、仮想ばね定数、仮想粘性係数、力の不感
帯である。送り速度、力目標値、仮想ばね定数、仮想粘
性係数、力の不感帯には、それぞれ設定値a,b,c,
d,eが与えられる。これらの制御パラメータは、力制
御の方式として、前述した仮想コンプライアンス制御を
使用した場合の例を示している。送り速度、力目標値、
仮想ばね定数、仮想粘性係数の各制御パラメータと制御
イメージとの関係を図に示すと、図7のようになる。図
7において、20は被加工対象であるワーク、21は作
業ツール、22はロボット機構1のアーム先端部である
ロボット手首である。一組の制御パラメータ(一つの力
制御パターン)について説明する。「力制御座標系指
定」とは、力制御を行う基準座標を指定するものであ
る。送り速度、力目標値、仮想ばね定数、仮想粘性係
数、力の不感帯の各制御パラメータは、基準座標系の軸
方向ごとに設定される。力制御座標系としては、ロボッ
ト機構1の本体を設置するベースに設定するベース座標
系、作業ツールに設定するツール座標系、予め任意の箇
所に対応して設定することができる任意座標系のうちい
ずれかが適宜に選択される。「送り速度」は、作業ツー
ル21を、予め教示した方向に移動させる速度である。
この場合、「教示した方向」は、位置パラメータ格納部
8に格納された位置データによって決定される移動方向
である。「力目標値」は作業ツール21をワーク20に
押し付けるための目標値である。また「仮想ばね定数」
と「仮想粘性係数」は、仮想コンプライアンス制御にお
ける特徴的なパラメータであり、図7に示される如く、
それぞれ、ソフトウェアで実現されるばね及びダンパで
ある。「力の不感帯」は、動作の安定性を確保するため
に、力センサ4から与えられる検出された力データに対
して不感帯を設定するためのものである。一つの力制御
パターンに含まれる複数の制御パラメータのそれぞれ
は、組として、ワーク又は作業ツールの交換に応じて、
又はワークの形状に応じて、又はグラインダ等による仕
上げ具合に応じて、時間の経過に伴って、刻々と変化さ
せる必要がある。従って、作業の各状況又は各区間に応
じて複数の力制御パターンが用意されることが必要であ
る。複数の力制御パターンのそれぞれは、作業の工程分
析することにより事前に決定される。各力制御パターン
は、番号を付して区別できるようにしている。力制御パ
ターン格納部6では、複数の力制御パターンが、それぞ
れに対して前述の番号を付した状態で、所定の順序に従
って格納されている。
について詳述する。力制御パターン格納部6に格納され
る複数の力制御パターンのそれぞれには、例えば図6に
示すように、複数の制御パラメータの設定値を組(一か
たまり)又はセットとして一括して格納されている。こ
れらの制御パラメータは、力制御座標系指定、送り速
度、力目標値、仮想ばね定数、仮想粘性係数、力の不感
帯である。送り速度、力目標値、仮想ばね定数、仮想粘
性係数、力の不感帯には、それぞれ設定値a,b,c,
d,eが与えられる。これらの制御パラメータは、力制
御の方式として、前述した仮想コンプライアンス制御を
使用した場合の例を示している。送り速度、力目標値、
仮想ばね定数、仮想粘性係数の各制御パラメータと制御
イメージとの関係を図に示すと、図7のようになる。図
7において、20は被加工対象であるワーク、21は作
業ツール、22はロボット機構1のアーム先端部である
ロボット手首である。一組の制御パラメータ(一つの力
制御パターン)について説明する。「力制御座標系指
定」とは、力制御を行う基準座標を指定するものであ
る。送り速度、力目標値、仮想ばね定数、仮想粘性係
数、力の不感帯の各制御パラメータは、基準座標系の軸
方向ごとに設定される。力制御座標系としては、ロボッ
ト機構1の本体を設置するベースに設定するベース座標
系、作業ツールに設定するツール座標系、予め任意の箇
所に対応して設定することができる任意座標系のうちい
ずれかが適宜に選択される。「送り速度」は、作業ツー
ル21を、予め教示した方向に移動させる速度である。
この場合、「教示した方向」は、位置パラメータ格納部
8に格納された位置データによって決定される移動方向
である。「力目標値」は作業ツール21をワーク20に
押し付けるための目標値である。また「仮想ばね定数」
と「仮想粘性係数」は、仮想コンプライアンス制御にお
ける特徴的なパラメータであり、図7に示される如く、
それぞれ、ソフトウェアで実現されるばね及びダンパで
ある。「力の不感帯」は、動作の安定性を確保するため
に、力センサ4から与えられる検出された力データに対
して不感帯を設定するためのものである。一つの力制御
パターンに含まれる複数の制御パラメータのそれぞれ
は、組として、ワーク又は作業ツールの交換に応じて、
又はワークの形状に応じて、又はグラインダ等による仕
上げ具合に応じて、時間の経過に伴って、刻々と変化さ
せる必要がある。従って、作業の各状況又は各区間に応
じて複数の力制御パターンが用意されることが必要であ
る。複数の力制御パターンのそれぞれは、作業の工程分
析することにより事前に決定される。各力制御パターン
は、番号を付して区別できるようにしている。力制御パ
ターン格納部6では、複数の力制御パターンが、それぞ
れに対して前述の番号を付した状態で、所定の順序に従
って格納されている。
【0010】ユーザプログラム格納部7は、オペレータ
がロボット機構1に動作の手順を教示するときに、手順
に関する教示プログラムを格納する。ユーザプログラム
格納部7に格納される教示プログラムの例を図5に示
す。図5において、破線30の左側領域に記述された一
連の命令メッセージが教示プログラムの内容である。プ
ログラムにおける各指令は、例えばP001〜P025の番号に
対応して記述される。これらの番号は、教示プログラム
のステップ番号を表し、それぞれ教示位置(教示した位
置データ)に対応している。また、これらのステップ番
号は、教示動作の時の作業ツールの動作状態を示した図
4において、対応して示される。図5に示されるチカラ
セイギョON[01]、チカラセイギョON[02]、
チカラセイギョOFF等の指令が、図1においてユーザ
プログラム格納部7の内部に格納されるパターン選択命
令7aに相当するものである。チカラセイギョON[0
1]の命令は、力制御パターン格納部6の力制御パター
ンナンバ1に格納されている一組の力制御パラメータを
使用することを宣言する命令である。この場合、最初の
チカラセイギョON[01]の命令で指定される力制御
は、図4に示すようにワークの作業領域のステップ番号
P002〜P005で特定される区間において実施される。こう
して、チカラセイギョON[01]の命令で力制御が開
始され、図5の破線30の右側領域に記述された制御パ
ラメータの内容で力制御が所定区間にて実行される。次
に、ステップ番号P005で示される位置にてチカラセイギ
ョON[02]の命令が実行される。この命令は、力制
御力制御パターン格納部6の力制御パターンナンバ2に
格納されている一組の力制御パラメータを使用すること
を宣言する命令である。この命令によって、力制御条件
の変更が実行され、ステップ番号P005〜P010で特定され
る区間において新しい力制御パターンを用いて力制御が
実行される。このように、[01]の内部の番号によっ
て、ワークの作業区間に応じて使用する力制御パターン
が決定される。チカラセイギョOFFは、力制御を終了
し、通常の位置制御の状態で動作することを宣言する命
令である。なお、図5中の破線30に関して右側領域に
は、各命令の内容を解説するために設けられた欄であ
る。
がロボット機構1に動作の手順を教示するときに、手順
に関する教示プログラムを格納する。ユーザプログラム
格納部7に格納される教示プログラムの例を図5に示
す。図5において、破線30の左側領域に記述された一
連の命令メッセージが教示プログラムの内容である。プ
ログラムにおける各指令は、例えばP001〜P025の番号に
対応して記述される。これらの番号は、教示プログラム
のステップ番号を表し、それぞれ教示位置(教示した位
置データ)に対応している。また、これらのステップ番
号は、教示動作の時の作業ツールの動作状態を示した図
4において、対応して示される。図5に示されるチカラ
セイギョON[01]、チカラセイギョON[02]、
チカラセイギョOFF等の指令が、図1においてユーザ
プログラム格納部7の内部に格納されるパターン選択命
令7aに相当するものである。チカラセイギョON[0
1]の命令は、力制御パターン格納部6の力制御パター
ンナンバ1に格納されている一組の力制御パラメータを
使用することを宣言する命令である。この場合、最初の
チカラセイギョON[01]の命令で指定される力制御
は、図4に示すようにワークの作業領域のステップ番号
P002〜P005で特定される区間において実施される。こう
して、チカラセイギョON[01]の命令で力制御が開
始され、図5の破線30の右側領域に記述された制御パ
ラメータの内容で力制御が所定区間にて実行される。次
に、ステップ番号P005で示される位置にてチカラセイギ
ョON[02]の命令が実行される。この命令は、力制
御力制御パターン格納部6の力制御パターンナンバ2に
格納されている一組の力制御パラメータを使用すること
を宣言する命令である。この命令によって、力制御条件
の変更が実行され、ステップ番号P005〜P010で特定され
る区間において新しい力制御パターンを用いて力制御が
実行される。このように、[01]の内部の番号によっ
て、ワークの作業区間に応じて使用する力制御パターン
が決定される。チカラセイギョOFFは、力制御を終了
し、通常の位置制御の状態で動作することを宣言する命
令である。なお、図5中の破線30に関して右側領域に
は、各命令の内容を解説するために設けられた欄であ
る。
【0011】また図5との関係で説明すべき事項は、前
述の教示操作器9の教示に関する操作方法である。前記
のユーザプログラム等の教示内容は、前記教示操作器9
を操作することにより入力されるように構成される。こ
のとき、教示操作器9に設けられた表示機能部に、入力
された教示内容が表示される。表示機能部に表示される
内容は、図5に示された教示プログラムの一部である。
この一部の表示量は、教示操作器9の表示部の面積で決
定される。従って、ハンディタイプの教示操作器では、
通常大きな表示部を備えることができないので、前述の
如く力制御の内容を、予め設定された力制御の命令を特
定するための番号([*])を指定するだけで、ユーザ
プログラムを入力することができるのは、操作上極めて
便利である。各番号「*」で特定される「チカラセイギ
ョON[*]」の内容(一組の制御パラメータの設定
値)は、前述の如く、事前に別途に入力されている。教
示操作器9を使用して教示プログラムを入力するときに
は、各「チカラセイギョON[*]」をそのまま番号を
指定して入力するが、その制御内容を具体的に知りたい
ときには、所定の操作ボタンを操作することにより、前
述の表示部に表示させるように構成することもできる。
述の教示操作器9の教示に関する操作方法である。前記
のユーザプログラム等の教示内容は、前記教示操作器9
を操作することにより入力されるように構成される。こ
のとき、教示操作器9に設けられた表示機能部に、入力
された教示内容が表示される。表示機能部に表示される
内容は、図5に示された教示プログラムの一部である。
この一部の表示量は、教示操作器9の表示部の面積で決
定される。従って、ハンディタイプの教示操作器では、
通常大きな表示部を備えることができないので、前述の
如く力制御の内容を、予め設定された力制御の命令を特
定するための番号([*])を指定するだけで、ユーザ
プログラムを入力することができるのは、操作上極めて
便利である。各番号「*」で特定される「チカラセイギ
ョON[*]」の内容(一組の制御パラメータの設定
値)は、前述の如く、事前に別途に入力されている。教
示操作器9を使用して教示プログラムを入力するときに
は、各「チカラセイギョON[*]」をそのまま番号を
指定して入力するが、その制御内容を具体的に知りたい
ときには、所定の操作ボタンを操作することにより、前
述の表示部に表示させるように構成することもできる。
【0012】図4及び図5に関する上記の説明は、既に
設定されたユーザプログラム及び制御パラメータに基づ
く力制御の実行の仕方の説明であったが、後で、図4及
び図5を参照して、ユーザプログラム及び各種制御パラ
メータの教示・設定方法が説明される。
設定されたユーザプログラム及び制御パラメータに基づ
く力制御の実行の仕方の説明であったが、後で、図4及
び図5を参照して、ユーザプログラム及び各種制御パラ
メータの教示・設定方法が説明される。
【0013】位置パラメータ格納部8は、作業中におけ
るロボット機構1の動作に必要とされる当該機構部分の
各部及び作業ツール21の位置又は姿勢等のデータを格
納する部分である。この位置パラメータ格納部8は、従
来の位置制御ロボットで備えられた、教示位置データを
格納した部分と同じ構成を有するものであり、既知のも
のである。本発明に係るロボット制御装置は、力制御を
実行するロボットに適用されるものであるが、力制御と
併せて位置制御も必要であるため、この位置パラメータ
格納部8を当然のことながら備えている。
るロボット機構1の動作に必要とされる当該機構部分の
各部及び作業ツール21の位置又は姿勢等のデータを格
納する部分である。この位置パラメータ格納部8は、従
来の位置制御ロボットで備えられた、教示位置データを
格納した部分と同じ構成を有するものであり、既知のも
のである。本発明に係るロボット制御装置は、力制御を
実行するロボットに適用されるものであるが、力制御と
併せて位置制御も必要であるため、この位置パラメータ
格納部8を当然のことながら備えている。
【0014】次いで、制御実行系の各部の構成及び作用
について詳述する。この制御実行系は、教示・設定系を
利用して教示され且つ格納された作業に関するプログラ
ム及び力等の設定値を用いて、作業を実際に再生し、実
施する機能を有する部分である。ユーザプログラム解析
部10は、ユーザプログラム格納部7に格納されたユー
ザプログラムを読取り、これを解読し、必要な処理を起
動する。例えば、解読したユーザプログラムに位置に関
する記述が含まれているときには、位置パラメータ転送
部12を起動し、必要な位置データを位置を位置パラメ
ータ格納部8から取出し、力制御演算前処理部13に転
送する。また解読したユーザプログラムにパターン選択
命令に関する記述が含まれているときには、パターン選
択部11を起動し、パターン選択命令で指定された力制
御パターンを、力制御演算前処理部13に送給する。力
制御演算前処理部13は、与えられた位置パラメータ及
び力制御を実行するための力制御パターンに含まれる制
御パラメータを、力制御演算部3にて使用できるフォー
マットに変換するための処理を実行する。ここにおい
て、力制御を実行するために教示・設定された複数の制
御パラメータは、各力制御パターンごと一つの組として
まとめて選択され、力制御演算前処理部13に送られ
る。従って、制御の実行に必要とされる多数の制御パラ
メータを同時に短時間にて力制御演算部3にセッティン
グすることが可能となる。このため、本実施例によるロ
ボット制御装置によれば、ロボット機構1の動作を速く
制御することができ、且つその動きを滑らかにすること
ができるという利点を有する。上記の力制御演算部3の
構成は、仮想コンプライアンスのための制御装置であ
り、具体的には、例えば図2に示すような構成を有して
いる。力制御演算前処理部13で所定のフォーマットに
変換された各制御パラメータは、力制御演算部3に設け
られたそれぞれのパラメータ入力部にセットされる。パ
ラメータ入力部としては、図2に示されるように、力制
御パターンに対応した力目標値入力部40、力の不感帯
入力部41、仮想粘性係数入力部42、仮想ばね定数入
力部43、座標系入力部44と、更に位置パラメータに
対応する位置目標値入力部45とが設けられている。座
標系入力部44にセットされた力制御座標系指定のパラ
メータは、座標変換処理部46,47,48のそれぞれ
に処理パラメータとして与えられる。ここで力制御演算
部3の構成と動作を概略的に説明する。力目標値入力部
40の力目標値は減算器49に与えられ、ここで、力セ
ンサ4から与えられる実際の力データとの間で差が求め
られる。ただし、減算器49に至る前の段階で、力セン
サ4で検出された力データは、力演算部50で重力補償
され、座標変換処理部48で力制御座標系に変換され
る。減算器49で求められた差信号は、不感帯入力部4
1にセットされた不感帯幅に基づいて動作条件が設定さ
れた不感帯処理部51で処理され、減算器52に入力さ
れる。位置目標値入力部45にセットされた位置パラメ
ータは減算器53に与えられ、ここで位置演算部54で
算出された作業ツールの現在位置との差が求められる。
位置演算部54には、ロボット機構1の各可動部すなわ
ち各関節部に装着されたエンコーダ55からの信号をカ
ウンタ56で積算した角度データが、位置信号として与
えられ、ここでキネマティックス演算により、現在位置
を算出する。減算器53で求められた差のデータは、座
標変換処理部46によって力制御座標系に変換される。
この位置の差のデータに基づき、仮想ばね定数入力部4
3にセットされた仮想ばね定数を用いる仮想ばね力演算
部56で、ばね力が算出される。得られたばね力は、減
算器52に入力される。減算器52で得られた差の出力
は、仮想粘性係数入力部42にセットされた仮想粘性係
数に基づき仮想粘性演算部57で処理される。仮想粘性
演算部57の出力は、座標変換処理部47で基準となる
座標系に変換され、更にモータ速度演算部58で、各関
節部に配置される駆動装置であるモータ59の回転速度
が演算される。演算されたモータ回転速度の制御指令値
は、サーボアンプ60を介してロボット機構1の各モー
タ59に与えれれ、その回転動作が制御される。以上の
ロボット制御装置の制御実行系の構成は、予め定められ
た仮想コンプライアンス制御を規定する方程式を満足す
る解を求めるように構成されている。この構成で得られ
た解を、各制御パラメータ入力部にセットされた複数の
制御パラメータで決められた制御条件を満たすための制
御指令として、ロボット機構1の駆動装置に与え、ロボ
ット機構1に動作を与える。こうして、ユーザの教示・
設定操作によって指定された複数の制御パラメータに基
づき、ロボット機構1を動作させることができる。図2
の構成では、前述の如く、ロボット機構1の各可動部
(関節部)に配置された駆動装置としてのモータ59、
及び可動部の移動量を検出するエンコーダ55及びカウ
ンタ56を明示している。
について詳述する。この制御実行系は、教示・設定系を
利用して教示され且つ格納された作業に関するプログラ
ム及び力等の設定値を用いて、作業を実際に再生し、実
施する機能を有する部分である。ユーザプログラム解析
部10は、ユーザプログラム格納部7に格納されたユー
ザプログラムを読取り、これを解読し、必要な処理を起
動する。例えば、解読したユーザプログラムに位置に関
する記述が含まれているときには、位置パラメータ転送
部12を起動し、必要な位置データを位置を位置パラメ
ータ格納部8から取出し、力制御演算前処理部13に転
送する。また解読したユーザプログラムにパターン選択
命令に関する記述が含まれているときには、パターン選
択部11を起動し、パターン選択命令で指定された力制
御パターンを、力制御演算前処理部13に送給する。力
制御演算前処理部13は、与えられた位置パラメータ及
び力制御を実行するための力制御パターンに含まれる制
御パラメータを、力制御演算部3にて使用できるフォー
マットに変換するための処理を実行する。ここにおい
て、力制御を実行するために教示・設定された複数の制
御パラメータは、各力制御パターンごと一つの組として
まとめて選択され、力制御演算前処理部13に送られ
る。従って、制御の実行に必要とされる多数の制御パラ
メータを同時に短時間にて力制御演算部3にセッティン
グすることが可能となる。このため、本実施例によるロ
ボット制御装置によれば、ロボット機構1の動作を速く
制御することができ、且つその動きを滑らかにすること
ができるという利点を有する。上記の力制御演算部3の
構成は、仮想コンプライアンスのための制御装置であ
り、具体的には、例えば図2に示すような構成を有して
いる。力制御演算前処理部13で所定のフォーマットに
変換された各制御パラメータは、力制御演算部3に設け
られたそれぞれのパラメータ入力部にセットされる。パ
ラメータ入力部としては、図2に示されるように、力制
御パターンに対応した力目標値入力部40、力の不感帯
入力部41、仮想粘性係数入力部42、仮想ばね定数入
力部43、座標系入力部44と、更に位置パラメータに
対応する位置目標値入力部45とが設けられている。座
標系入力部44にセットされた力制御座標系指定のパラ
メータは、座標変換処理部46,47,48のそれぞれ
に処理パラメータとして与えられる。ここで力制御演算
部3の構成と動作を概略的に説明する。力目標値入力部
40の力目標値は減算器49に与えられ、ここで、力セ
ンサ4から与えられる実際の力データとの間で差が求め
られる。ただし、減算器49に至る前の段階で、力セン
サ4で検出された力データは、力演算部50で重力補償
され、座標変換処理部48で力制御座標系に変換され
る。減算器49で求められた差信号は、不感帯入力部4
1にセットされた不感帯幅に基づいて動作条件が設定さ
れた不感帯処理部51で処理され、減算器52に入力さ
れる。位置目標値入力部45にセットされた位置パラメ
ータは減算器53に与えられ、ここで位置演算部54で
算出された作業ツールの現在位置との差が求められる。
位置演算部54には、ロボット機構1の各可動部すなわ
ち各関節部に装着されたエンコーダ55からの信号をカ
ウンタ56で積算した角度データが、位置信号として与
えられ、ここでキネマティックス演算により、現在位置
を算出する。減算器53で求められた差のデータは、座
標変換処理部46によって力制御座標系に変換される。
この位置の差のデータに基づき、仮想ばね定数入力部4
3にセットされた仮想ばね定数を用いる仮想ばね力演算
部56で、ばね力が算出される。得られたばね力は、減
算器52に入力される。減算器52で得られた差の出力
は、仮想粘性係数入力部42にセットされた仮想粘性係
数に基づき仮想粘性演算部57で処理される。仮想粘性
演算部57の出力は、座標変換処理部47で基準となる
座標系に変換され、更にモータ速度演算部58で、各関
節部に配置される駆動装置であるモータ59の回転速度
が演算される。演算されたモータ回転速度の制御指令値
は、サーボアンプ60を介してロボット機構1の各モー
タ59に与えれれ、その回転動作が制御される。以上の
ロボット制御装置の制御実行系の構成は、予め定められ
た仮想コンプライアンス制御を規定する方程式を満足す
る解を求めるように構成されている。この構成で得られ
た解を、各制御パラメータ入力部にセットされた複数の
制御パラメータで決められた制御条件を満たすための制
御指令として、ロボット機構1の駆動装置に与え、ロボ
ット機構1に動作を与える。こうして、ユーザの教示・
設定操作によって指定された複数の制御パラメータに基
づき、ロボット機構1を動作させることができる。図2
の構成では、前述の如く、ロボット機構1の各可動部
(関節部)に配置された駆動装置としてのモータ59、
及び可動部の移動量を検出するエンコーダ55及びカウ
ンタ56を明示している。
【0015】以上に説明した構成を有するロボット制御
装置が適用されるロボットで、当該ロボットに特定の力
作業を行わせる場合の例を、図4を参照して説明する。
図4は、作業を実際に行う前に、ロボット制御装置に作
業に必要な多数の各種制御パラメータをセッティングす
るため、ロボット機構1に取り付けられた作業ツール2
1に教示のための動作を行わせている状態を示す。この
場合、作業ツール21はグラインダである。作業ツール
21は、ワーク20に形成された孔20aの周囲を研磨
する作業を実行する。図4に示される如く、作業の一例
として、プログラム開始点(P001)、力制御開始点(P0
02)、ワーク20の被加工部の特徴に応じて決定される
制御条件変更点(P005,P010,P015,P020 )、力制御終了
点(P025)が定義されている。ワーク20の各箇所の力
作業の内容は、制御パラメータの教示・設定作業におい
て、前記の教示・設定系の動作に基づき、各区間に対応
させて一かたまりの力制御パターンとして準備される。
すなわち力制御開始点(P002)から力制御変更点(P00
5)、力制御変更点(P010)から力制御変更点(P01
5)、力制御変更点(P020)から力制御終了点(P025)
の各区間は、作業ツール21をワーク20に300gf
の力で押し付けながら送り速度3mm/sで移動するよ
うに、力制御パターンナンバ01を設定する。また力制
御変更点(P005)から力制御変更点(P010)、力制御変
更点(P015)から力制御変更点(P020)の区間は、押し
付け力を400gfに高め、送り速度を7mm/sに上
げて移動するように、力制御パターンナンバ02を設定
する。その後、プログラム開始点(P001)から力制御終了
点(P025)に至るまで作業ツール21を移動させる。以
上の如く、各点(P001〜P025)の位置データを教示する
と共に、力制御の開始点、変更点、終了点のそれぞれで
は、チカラセイギョON命令や、チカラセイギョOFF
命令を入力する。こうして、作業ツール21の教示ため
の上記動作によって、教示プログラムを容易に作成する
ことができる。また各制御条件を規定する複数の制御パ
ラメータを一かたまりで取り扱えるため、教示プログラ
ムを簡単に記述することができる。すなわち、教示プロ
グラムの記述の簡単化は、力制御状態の異なる各作業区
間における複数の制御パラメータを、前述の如く、教示
操作器9を用いて一かたまりの制御パターンとして教示
し、また力制御パターン格納部6に各制御パターンごと
にまとめて設定できるように構成したから、実現可能に
なった。
装置が適用されるロボットで、当該ロボットに特定の力
作業を行わせる場合の例を、図4を参照して説明する。
図4は、作業を実際に行う前に、ロボット制御装置に作
業に必要な多数の各種制御パラメータをセッティングす
るため、ロボット機構1に取り付けられた作業ツール2
1に教示のための動作を行わせている状態を示す。この
場合、作業ツール21はグラインダである。作業ツール
21は、ワーク20に形成された孔20aの周囲を研磨
する作業を実行する。図4に示される如く、作業の一例
として、プログラム開始点(P001)、力制御開始点(P0
02)、ワーク20の被加工部の特徴に応じて決定される
制御条件変更点(P005,P010,P015,P020 )、力制御終了
点(P025)が定義されている。ワーク20の各箇所の力
作業の内容は、制御パラメータの教示・設定作業におい
て、前記の教示・設定系の動作に基づき、各区間に対応
させて一かたまりの力制御パターンとして準備される。
すなわち力制御開始点(P002)から力制御変更点(P00
5)、力制御変更点(P010)から力制御変更点(P01
5)、力制御変更点(P020)から力制御終了点(P025)
の各区間は、作業ツール21をワーク20に300gf
の力で押し付けながら送り速度3mm/sで移動するよ
うに、力制御パターンナンバ01を設定する。また力制
御変更点(P005)から力制御変更点(P010)、力制御変
更点(P015)から力制御変更点(P020)の区間は、押し
付け力を400gfに高め、送り速度を7mm/sに上
げて移動するように、力制御パターンナンバ02を設定
する。その後、プログラム開始点(P001)から力制御終了
点(P025)に至るまで作業ツール21を移動させる。以
上の如く、各点(P001〜P025)の位置データを教示する
と共に、力制御の開始点、変更点、終了点のそれぞれで
は、チカラセイギョON命令や、チカラセイギョOFF
命令を入力する。こうして、作業ツール21の教示ため
の上記動作によって、教示プログラムを容易に作成する
ことができる。また各制御条件を規定する複数の制御パ
ラメータを一かたまりで取り扱えるため、教示プログラ
ムを簡単に記述することができる。すなわち、教示プロ
グラムの記述の簡単化は、力制御状態の異なる各作業区
間における複数の制御パラメータを、前述の如く、教示
操作器9を用いて一かたまりの制御パターンとして教示
し、また力制御パターン格納部6に各制御パターンごと
にまとめて設定できるように構成したから、実現可能に
なった。
【0016】次に、図3を参照して、ロボット制御装置
5を実現するコンピュータ構成及びその動作を説明す
る。力センサ4が出力した検出値は力入力装置70に入
力される。力入力装置70は、力センサ4の出力がアナ
ログ信号であるときにはA/D変換器で構成され、前記
出力がシリアル通信(RS422,RS232−C等)
であるときには、通信に適したレシーバで構成される。
力入力装置70に取り込まれたデータは、バス71を通
してRAM72に蓄えられる。各関節部に対応して配置
されたエンコーダ55の発生する各軸の角度データは、
カウンタ56で積算され、バス71を介してRAM72
に蓄えられる。パラメータ入力装置73は、力制御に関
する制御パラメータを入力する装置であり、入力された
制御パラメータはバス71を通してRAM72に蓄えら
れる。また位置パラメータについては、パラメータ入力
装置73で、指示した時の位置をRAM72に蓄えるよ
うに構成される。こうして、RAM72には、位置パラ
メータ格納部8、ユーザプログラム格納部7、力制御パ
ターン格納部6等が形成され、更にCPU74における
演算処理に必要とされる中間パラメータが蓄えられる。
CPU74で実行される各種の処理プログラムは、RO
M75に格納される。教示・設定された複数の制御パラ
メータを用いて、力制御による作業をロボット機構1に
行わせるとき、CPU74は、ユーザプログラム、各作
業区間に対応して決められた一組の力制御パターンによ
る制御パラメータ、位置制御パラメータを読み出して制
御実行系にセットし、力センサ4及びエンコーダ55の
検出信号を取り込み、取り込んだ力データを補償し、設
定された制御目標値と比較しながら動作指令値を算出す
る。動作指令値は、動作指令値出力装置76から出力さ
れ、サーボアンプ60を介して、ロボット機構1の関節
部に配置された所要のモータ59に供給される。こうし
て、CPU74はロボット制御装置5としての機能を実
現する。
5を実現するコンピュータ構成及びその動作を説明す
る。力センサ4が出力した検出値は力入力装置70に入
力される。力入力装置70は、力センサ4の出力がアナ
ログ信号であるときにはA/D変換器で構成され、前記
出力がシリアル通信(RS422,RS232−C等)
であるときには、通信に適したレシーバで構成される。
力入力装置70に取り込まれたデータは、バス71を通
してRAM72に蓄えられる。各関節部に対応して配置
されたエンコーダ55の発生する各軸の角度データは、
カウンタ56で積算され、バス71を介してRAM72
に蓄えられる。パラメータ入力装置73は、力制御に関
する制御パラメータを入力する装置であり、入力された
制御パラメータはバス71を通してRAM72に蓄えら
れる。また位置パラメータについては、パラメータ入力
装置73で、指示した時の位置をRAM72に蓄えるよ
うに構成される。こうして、RAM72には、位置パラ
メータ格納部8、ユーザプログラム格納部7、力制御パ
ターン格納部6等が形成され、更にCPU74における
演算処理に必要とされる中間パラメータが蓄えられる。
CPU74で実行される各種の処理プログラムは、RO
M75に格納される。教示・設定された複数の制御パラ
メータを用いて、力制御による作業をロボット機構1に
行わせるとき、CPU74は、ユーザプログラム、各作
業区間に対応して決められた一組の力制御パターンによ
る制御パラメータ、位置制御パラメータを読み出して制
御実行系にセットし、力センサ4及びエンコーダ55の
検出信号を取り込み、取り込んだ力データを補償し、設
定された制御目標値と比較しながら動作指令値を算出す
る。動作指令値は、動作指令値出力装置76から出力さ
れ、サーボアンプ60を介して、ロボット機構1の関節
部に配置された所要のモータ59に供給される。こうし
て、CPU74はロボット制御装置5としての機能を実
現する。
【0017】
【発明の効果】本発明によれば、次の効果を発揮する。
制御パラメータを教示・設定し、設定された制御パラメ
ータを用いて制御を実行するロボット制御装置を備えた
力制御を行うためのロボットにおいて、力制御に必要な
複数の制御パラメータを、力制御パターンとして一括し
て取り扱えるように構成した。このため、教示・設定の
動作では、教示・設定のための操作が簡易となり、ユー
ザプログラムの作成が容易となり、操作性を向上するこ
とができる。また制御実行の再生処理では、制御実行系
における複数の制御パラメータのセッティングが早くな
り、ロボットの制御動作を早くすることができる。既に
教示・設定した制御パラメータは、他のユーザプログラ
ムでも利用できるので、教示の重複を防止でき、教示作
業が楽になる。一括して制御パラメータを設定するの
で、制御パラメータの一部を設定し忘れることを防ぎ、
これに起因するロボットの暴走を防止することができ
る。教示するユーザプログラム中に現われる制御パラメ
ータに関する記述の数が少なくなるため、ユーザプログ
ラムの全体構造がつかみやすく、プログラムのつながり
の理解が向上する。
制御パラメータを教示・設定し、設定された制御パラメ
ータを用いて制御を実行するロボット制御装置を備えた
力制御を行うためのロボットにおいて、力制御に必要な
複数の制御パラメータを、力制御パターンとして一括し
て取り扱えるように構成した。このため、教示・設定の
動作では、教示・設定のための操作が簡易となり、ユー
ザプログラムの作成が容易となり、操作性を向上するこ
とができる。また制御実行の再生処理では、制御実行系
における複数の制御パラメータのセッティングが早くな
り、ロボットの制御動作を早くすることができる。既に
教示・設定した制御パラメータは、他のユーザプログラ
ムでも利用できるので、教示の重複を防止でき、教示作
業が楽になる。一括して制御パラメータを設定するの
で、制御パラメータの一部を設定し忘れることを防ぎ、
これに起因するロボットの暴走を防止することができ
る。教示するユーザプログラム中に現われる制御パラメ
ータに関する記述の数が少なくなるため、ユーザプログ
ラムの全体構造がつかみやすく、プログラムのつながり
の理解が向上する。
【図1】本発明に係るロボット制御装置のソフト構成を
概念的に表すブロック構成図である。
概念的に表すブロック構成図である。
【図2】力制御演算部の具体的構成の一例を示すブロッ
ク図である。
ク図である。
【図3】ロボット制御装置を実現するコンピュータのハ
ード構成を示すブロック図である。
ード構成を示すブロック図である。
【図4】作業状況とユーザプログラム及び各制御区間の
制御条件を説明するための斜視図である。
制御条件を説明するための斜視図である。
【図5】ユーザプログラムの記述の一例を示す図であ
る。
る。
【図6】力制御パターンの内容の一例を示す図である。
【図7】力制御パターンに含まれる各種制御パラメータ
を解説するための、模式図である。
を解説するための、模式図である。
1 ロボット機構 3 力制御演算部 4 力センサ 5 ロボット制御装置 6 力制御パターン格納部 7 ユーザプログラム格納部 8 位置パラメータ格納部 9 教示操作器 10 ユーザプログラム解析部 11 パターン選択部 20 ワーク 21 作業ツール
フロントページの続き (56)参考文献 特開 平2−139190(JP,A) 特開 平4−267409(JP,A) 特開 平2−247703(JP,A) 特開 平2−121007(JP,A) 特開 平1−229306(JP,A) (58)調査した分野(Int.Cl.7,DB名) G05B 19/42
Claims (4)
- 【請求項1】 被対象物に対して力作業を行うとき、教
示された位置制御用位置パラメータと力制御用の複数の
力制御パラメータとが使用され、前記力制御パラメータ
は少なくとも力制御座標系指定、送り速度、力目標値、
仮想ばね定数、仮想粘性係数、力の不感帯を含むロボッ
ト制御装置であり、前記力作業は、前記被対象物の被作
業部位に対応して力作業の条件が異なるように設定され
た複数の力作業区間から構成され、 前記力制御を実行する前に、当該力制御の実行に使用さ
れる、前記位置パラメータと前記力制御パラメータから
なる複数の制御パラメータを準備する教示・設定手段を
備え、この教示・設定手段は、 前記位置パラメータを格納する位置パラメータ格納手段
と、 1つの組を形成する前記複数の力制御パラメータを、前
記力作業区間ごとに対応する1つの力制御パターンとし
て格納し、複数の前記力制御パターンを格納する力制御
パターン格納手段とを含み、 前記力作業をロボットに実行させる制御実行手段を備
え、この制御実行手段は、 前記力作業のための前記位置制御と前記力制御を行う力
制御演算手段と、 前記位置パラメータ格納手段から前記力制御演算手段へ
前記位置パラメータを転送する位置パラメータ転送手段
と、 前記力作業区間に応じて、前記力制御パターン格納手段
から前記複数の力制御パターンのうちの1つを取出して
前記力制御演算手段へを転送し、前記力制御演算手段に
設けられた複数の力制御パラメータ入力手段の各々にセ
ットするパターン選択手段とを含む、 ように構成されることを特徴とするロボット制御装置。 - 【請求項2】 請求項1記載のロボット制御装置におい
て、前記力作業区間のいずれかに応じて前記複数の力制
御パラメータを組として設定するための教示操作手段を
備えることを特徴とするロボット制御装置。 - 【請求項3】 複数の関節部を備えるロボット機構部
と、このロボット機構部に取り付けた作業ツールと、前
記ロボット機構部に設けられた複数の関節部のそれぞれ
に配置され、前記ロボット機構部を動作させる駆動手段
とを含むロボットに適用され、前記駆動手段の各々の動
作を制御して前記ロボット機構部を動作させ、前記作業
ツールを任意の位置に移動してワークに対し所定の力制
御を行わせるロボット制御装置であり、前記力制御を実
行するための力制御演算手段を有し、この力制御演算手
段は、前記作業ツールの位置を検出する位置検出手段と
前記作業ツールに加わる力を検出する力検出手段のそれ
ぞれの検出信号を入力し、これらの検出値と、予め設定
された位置及び力の目標値との偏差を求め、これらの偏
差がゼロになるように力制御のための制御指令値を出力
する前記ロボット制御装置において、 前記力制御により前記ワークに対して行われる力作業
は、前記ワークの被作業部位に対する力作業の条件が異
なるように設定された複数の力作業区間から構成され、 前記力制御演算手段にセットされる各種制御パラメータ
のうち複数の力制御パラメータを、前記複数の力作業区
間の各々に対応する1つの力制御パターンとして、一括
して教示、設定することが可能な教示・設定手段を備
え、前記教示・設定手段は、ユーザプログラムを格納するユ
ーザプログラム格納手段と、前記力制御区間ごとの複数
の力制御パラメータを一組の力制御パターンとして一括
して格納する力制御パターン格納手段を含む、 ことを特徴とするロボット制御装置。 - 【請求項4】 請求項3記載のロボット制御装置におい
て、前記教示・設定手段と前記力制御演算手段との間
に、前記ユーザプログラム格納手段からパターン選択命
令を取り出すユーザプログラム解析手段と、前記パター
ン選択命令に従って、前記力制御パターン格納手段に格
納される複数の力制御パターンのうちのいずれかを選択
し、前記力制御演算手段の側へ送るパターン選択手段を
設けたことを特徴とするロボット制御装置。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3311019A JP3023432B2 (ja) | 1991-11-26 | 1991-11-26 | ロボット制御装置 |
PCT/JP1992/001539 WO1993011477A1 (en) | 1991-11-26 | 1992-11-25 | Robot controller |
DE69221851T DE69221851D1 (de) | 1991-11-26 | 1992-11-25 | Robotersteuerung |
KR1019930702150A KR930703635A (ko) | 1991-11-26 | 1992-11-25 | 로보트 제어장치 |
EP92924009A EP0573657B1 (en) | 1991-11-26 | 1992-11-25 | Robot controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3311019A JP3023432B2 (ja) | 1991-11-26 | 1991-11-26 | ロボット制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH05150826A JPH05150826A (ja) | 1993-06-18 |
JP3023432B2 true JP3023432B2 (ja) | 2000-03-21 |
Family
ID=18012143
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP3311019A Expired - Fee Related JP3023432B2 (ja) | 1991-11-26 | 1991-11-26 | ロボット制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3023432B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3045271B1 (en) | 2013-09-19 | 2022-04-06 | Keio University | Position/force controller, and position/force control method and program |
JP2016221653A (ja) * | 2015-06-03 | 2016-12-28 | セイコーエプソン株式会社 | ロボット制御装置およびロボットシステム |
-
1991
- 1991-11-26 JP JP3311019A patent/JP3023432B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH05150826A (ja) | 1993-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6222338B1 (en) | Method and apparatus for the direct teaching of automatic machines | |
US20040257021A1 (en) | Multiple robot arm tracking and mirror jog | |
JPH06187023A (ja) | マニピュレータの安全操作システム及びロボットの安全操作システム | |
JPH07295625A (ja) | ロボットのジョグ送り情報表示装置 | |
US11872697B2 (en) | Collaborative device with optimised control | |
JPH06250728A (ja) | ロボットの直接教示装置 | |
JP3283650B2 (ja) | ロボット制御装置 | |
JP3023432B2 (ja) | ロボット制御装置 | |
JP2791030B2 (ja) | 多自由度作業機械の曲面倣い制御装置 | |
EP0573657B1 (en) | Robot controller | |
JPH05345291A (ja) | ロボットの動作範囲制限方式 | |
JPH08267381A (ja) | ロボット手動送り制御装置 | |
JPH05303425A (ja) | 直接教示方式ロボット | |
JP2610996B2 (ja) | 多関節ロボット制御装置 | |
JP3350687B2 (ja) | ロボット制御方法およびロボット制御装置 | |
JPH07334228A (ja) | ロボットの教示データ補正装置 | |
JPH07205068A (ja) | ロボットの座標系設定方法 | |
JPH0619522A (ja) | ロボット制御装置 | |
JPH10244481A (ja) | ロボットの動作プログラム作成方法および装置 | |
JPS60237505A (ja) | ロボツト制御方法 | |
JPH01175004A (ja) | ロボット制御装置 | |
WO2023112342A1 (ja) | 教示装置、制御装置、及び機械システム | |
Nakamura et al. | Controller for industrial robots | |
JPH04279901A (ja) | 産業用ロボットの制御装置 | |
JPH03270865A (ja) | 多自由度作業機械の位置と力の制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |