JPH0276010A - ディジタル制御装置 - Google Patents
ディジタル制御装置Info
- Publication number
- JPH0276010A JPH0276010A JP22944188A JP22944188A JPH0276010A JP H0276010 A JPH0276010 A JP H0276010A JP 22944188 A JP22944188 A JP 22944188A JP 22944188 A JP22944188 A JP 22944188A JP H0276010 A JPH0276010 A JP H0276010A
- Authority
- JP
- Japan
- Prior art keywords
- microprocessor
- state
- coordinate system
- host computer
- force
- 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.)
- Pending
Links
Landscapes
- Manipulator (AREA)
- Control Of Position Or Direction (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔概要〕
多関節ロボットや自動機のアーム先端に取付けた力セン
サーにより検出した力をフィードバックし、位置と力の
制御を同時に行うディジタル制御装置に関し、 この種のディジタル制御装置において、サーボ系の動特
性およびロバスト性を向上でき、結果として力制御系全
体の特性をも向上できるようにすることを目的とし、 ディジタル制御装置を2個のマイクロプロセッサと1個
のホスト計算機で以て構成し、一方のマイクロプロセッ
サにサーボ制御を行わせ、他方のマイクロプロセッサに
力制御を行わせるものである。
サーにより検出した力をフィードバックし、位置と力の
制御を同時に行うディジタル制御装置に関し、 この種のディジタル制御装置において、サーボ系の動特
性およびロバスト性を向上でき、結果として力制御系全
体の特性をも向上できるようにすることを目的とし、 ディジタル制御装置を2個のマイクロプロセッサと1個
のホスト計算機で以て構成し、一方のマイクロプロセッ
サにサーボ制御を行わせ、他方のマイクロプロセッサに
力制御を行わせるものである。
本発明は、多関節ロボットや自動機のアーム先端に取付
けた力センサーにより検出した力をフィードバックし、
位置と力の制御を同時に行うディジクル制御装置に関す
る。組立て作業における嵌め合い、ならい、押し付は動
作などアームと対象物体とが接触するような作業では位
置と同時に力を制御Ilする必要が生じる。
けた力センサーにより検出した力をフィードバックし、
位置と力の制御を同時に行うディジクル制御装置に関す
る。組立て作業における嵌め合い、ならい、押し付は動
作などアームと対象物体とが接触するような作業では位
置と同時に力を制御Ilする必要が生じる。
第15図は6関節ロボットの例を示す図である。
同図において、JlないしJ、は関節、トIはハンド(
手首)、Σえは基準座標系、Σ、はハンド座標系をそれ
ぞれ示す。
手首)、Σえは基準座標系、Σ、はハンド座標系をそれ
ぞれ示す。
多関節ロボットを制御IIする場合、機構の複雑さから
、力センサに対してハンド座標系Σ□、関節角やモータ
駆動トルクに対して関節座標系、制御演算に対して基準
座標系Σ8を設け、それぞれの機構特性に合わせて座標
変換を決定している。
、力センサに対してハンド座標系Σ□、関節角やモータ
駆動トルクに対して関節座標系、制御演算に対して基準
座標系Σ8を設け、それぞれの機構特性に合わせて座標
変換を決定している。
第13図は多関節ロボットの力制御系の例を示す図であ
る。同図において、1は力の補償部、2と3は座標変換
部、4は関数発生器、5はサーボ補償部、6は機構部、
7は力センサ−,11’、Rは力の設定値、FRは力の
現在値、F、TIは力の偏差、F’は力の観測値、V4
は指示速度、Vも指示速度、rは目標位置、θは現在位
置、eは偏差、Uは操作量を示す。なお、添字Rは基準
座標系で表現される変数を示し、添字Hはハンド座標系
で表現される変数を示し、添字なしは関節座標系で表現
される変数を示す。
る。同図において、1は力の補償部、2と3は座標変換
部、4は関数発生器、5はサーボ補償部、6は機構部、
7は力センサ−,11’、Rは力の設定値、FRは力の
現在値、F、TIは力の偏差、F’は力の観測値、V4
は指示速度、Vも指示速度、rは目標位置、θは現在位
置、eは偏差、Uは操作量を示す。なお、添字Rは基準
座標系で表現される変数を示し、添字Hはハンド座標系
で表現される変数を示し、添字なしは関節座標系で表現
される変数を示す。
第14図は従来の力制御系のハードウェア構成例を示す
図である。同図において、8はマイクロプロセッサを示
している。
図である。同図において、8はマイクロプロセッサを示
している。
第13図の力制御系をディジタル制御で実現しようとし
た場合、第14図のようなハードウェア構成が考えられ
るが、第13図で示す全ての処理をマイクロプロセッサ
8でシーケンシャルに処理すると、演算時間が増大して
しまう。その結果、サンプリング周期が大きくなり、内
側のループの位置決めサーボ系の動特性およびロバスト
性が劣化し、延いては力制御系の特性も悪くなる。
た場合、第14図のようなハードウェア構成が考えられ
るが、第13図で示す全ての処理をマイクロプロセッサ
8でシーケンシャルに処理すると、演算時間が増大して
しまう。その結果、サンプリング周期が大きくなり、内
側のループの位置決めサーボ系の動特性およびロバスト
性が劣化し、延いては力制御系の特性も悪くなる。
本発明は、この点に鑑みて創作されたものであって、サ
ーボ系の動特性およびロバスト性を向上でき、結果とし
て力制御系全体の特性をも向上できるディジタル制御装
置を提供することを目的としている。
ーボ系の動特性およびロバスト性を向上でき、結果とし
て力制御系全体の特性をも向上できるディジタル制御装
置を提供することを目的としている。
本発明のディジタル制御装置は、アームの先端にハンド
が取り付けられると共にハンドに作用する力を検出する
力センサーを持つ多関節ロボットまたは自動機を制御す
るものである。
が取り付けられると共にハンドに作用する力を検出する
力センサーを持つ多関節ロボットまたは自動機を制御す
るものである。
第1図は本発明のディジタル制御装置のハードウェア構
成を示すものである。同図において、11と12はマイ
クロプロセッサ、13と14は外部メモリ、15と16
はI10装置、17と18はローカル・バス、19と2
0はバス、21は同期用クロック源、22はDMAシー
ケンス制御部、23はホスト・インタフェース制御部、
24はホスト計算機をそれぞれ示している。
成を示すものである。同図において、11と12はマイ
クロプロセッサ、13と14は外部メモリ、15と16
はI10装置、17と18はローカル・バス、19と2
0はバス、21は同期用クロック源、22はDMAシー
ケンス制御部、23はホスト・インタフェース制御部、
24はホスト計算機をそれぞれ示している。
マイクロプロセッサ11.12として、ディジタル・シ
グナル・プロセッサ(例えば富士通製MB8764 )
を使用することが出来る。このディジタル・シグナル・
プロセッサは、内部にメモリを有すると共にDMAI能
を有するものである。マイクロプロセッサ11.12は
、同期用クロック源21の同期クロック(サンプリング
・クロック5CK)を取り込み、サンプリング同期を取
る。また、マイクロプロセッサ11.12は、ローカル
・バス17.18を通して外部メモリ13.14及びI
10装置15.16を互いに干渉することなく自由にア
クセスすることが出来る。I10装置15はエンコーダ
&カウンタを含み、I10装置16は力センサーを含ん
でいる。マイクロプロセッサ11.12間の通信は、サ
ンプリング毎に高速に行う必要があり、DMA転送によ
り、マイクロプロセッサ11.12の内部動作とは非同
期にバス19.20を通して行う。ホスト計算機24か
らは、各マイクロプロセッサ11.12に対してマイク
ロプロセッサ11.12の処理とは非同期にデータ転送
する必要がある。そこで、ホスト・インタフェース制御
部23により、ホスト計算機側のバスとマイクロプロセ
ッサ側のDMAインタフェースを結合し、ホスト計算機
23からDMAでマイクロプロセッサ11.12をアク
セス可能にする。更に、マイクロプロセッサ11と12
のDMA転送、ホスト計算機とマイクロプロセッサ11
間のDMA転送、ホスト計算機とマイクロプロセッサ1
2間のDMA転送のタイミングが重なった場合に、競合
を回避する機能をDMAシーケン制御部22に持たせる
。
グナル・プロセッサ(例えば富士通製MB8764 )
を使用することが出来る。このディジタル・シグナル・
プロセッサは、内部にメモリを有すると共にDMAI能
を有するものである。マイクロプロセッサ11.12は
、同期用クロック源21の同期クロック(サンプリング
・クロック5CK)を取り込み、サンプリング同期を取
る。また、マイクロプロセッサ11.12は、ローカル
・バス17.18を通して外部メモリ13.14及びI
10装置15.16を互いに干渉することなく自由にア
クセスすることが出来る。I10装置15はエンコーダ
&カウンタを含み、I10装置16は力センサーを含ん
でいる。マイクロプロセッサ11.12間の通信は、サ
ンプリング毎に高速に行う必要があり、DMA転送によ
り、マイクロプロセッサ11.12の内部動作とは非同
期にバス19.20を通して行う。ホスト計算機24か
らは、各マイクロプロセッサ11.12に対してマイク
ロプロセッサ11.12の処理とは非同期にデータ転送
する必要がある。そこで、ホスト・インタフェース制御
部23により、ホスト計算機側のバスとマイクロプロセ
ッサ側のDMAインタフェースを結合し、ホスト計算機
23からDMAでマイクロプロセッサ11.12をアク
セス可能にする。更に、マイクロプロセッサ11と12
のDMA転送、ホスト計算機とマイクロプロセッサ11
間のDMA転送、ホスト計算機とマイクロプロセッサ1
2間のDMA転送のタイミングが重なった場合に、競合
を回避する機能をDMAシーケン制御部22に持たせる
。
第2図は本発明におけるマイクロプロセッサの処理手順
を示す図である。マイクロプロセンサ11はサーボ演算
を行い、マイクロプロセッサ12は力制御演算を行う。
を示す図である。マイクロプロセンサ11はサーボ演算
を行い、マイクロプロセッサ12は力制御演算を行う。
マイクロプロセッサ11とマイクロプロセッサ12は、
同一のサンプリング・クロックSCKで同期して動作す
るものとする。
同一のサンプリング・クロックSCKで同期して動作す
るものとする。
先ず、マイクロプロセッサ11の処理手順について説明
する。
する。
■ サンプリング・クロックSCKのトリガ発生をチェ
ックし、サンプリング・タイミングならば、[2]の処
理に進む。
ックし、サンプリング・タイミングならば、[2]の処
理に進む。
■ DMA転送により1ステップ前の関節指示速度Vを
入力する。
入力する。
■ 関節角θを人力する。
■ e=r−0に応じてサーボ演算を実行し、モーフ駆
動力Uを更新する。
動力Uを更新する。
■ ■で入力した1スツプ前の関節指示速度Vに応じて
目標位置rを計算する。
目標位置rを計算する。
■ ■で入力した関節角θを次のサンプリング時の座標
変換のためにマイクロプロセッサ12に送る。
変換のためにマイクロプロセッサ12に送る。
■ ホスト計算機からのコマンドを解析する。
■ 必要に応じて各コマンドを実行する。
次に、マイクロプロセッサ12の処理手順を説明する。
■ サンプリング・クロックSCKのトリガ発生をチェ
ックし、サンプリング・タイミングならば、[2]の処
理に進む。
ックし、サンプリング・タイミングならば、[2]の処
理に進む。
■ センサー信号FHを入力する。
■ センサー信号F1を1ステップ前の姿勢θをもとに
基準座標系の値FRに変換する。
基準座標系の値FRに変換する。
■ PRをホスト計算機から設定したFiRと比較し、
FiR=FiR−Fiに応じて適当な補償演算を行い、
この結果を指示速度vRとする。
FiR=FiR−Fiに応じて適当な補償演算を行い、
この結果を指示速度vRとする。
■ 指示速度vllを関節速度Vに変換し、次のサンプ
リング時にマイクロプロセッサ11側に渡す。
リング時にマイクロプロセッサ11側に渡す。
■、■ マイクロプロセッサ11と同様にホスト・イン
タフェース処理を行う。
タフェース処理を行う。
なお、■、■の座標変換は機構の構造により決定される
ものであり、演算方法は例えばP、Paul著ロボフロ
ボットプレータ等に記載されている。
ものであり、演算方法は例えばP、Paul著ロボフロ
ボットプレータ等に記載されている。
第3図はホスト・インタフェース・バッファの設計例を
示す図である。ロボットを動かしながら、力制御やサー
ボ制御のパラメータ(フィードバック・ゲインなど)を
変更する場合、1サンプリング周期内で関連するパラメ
ータを全て切り換えなければならない。そのために、−
度に換える最大のパラメータ数だけのバッファ容量とパ
ラメータ変更のための手順(ソフトウェア)が必要であ
る。
示す図である。ロボットを動かしながら、力制御やサー
ボ制御のパラメータ(フィードバック・ゲインなど)を
変更する場合、1サンプリング周期内で関連するパラメ
ータを全て切り換えなければならない。そのために、−
度に換える最大のパラメータ数だけのバッファ容量とパ
ラメータ変更のための手順(ソフトウェア)が必要であ
る。
ホスト計算機とDSPの速度が何十倍も異なるために特
に問題になる。これを実現するために、転送コマンド受
付時に同一サンプリング内で全てのパラメータを転送す
る必要がある。そこで、ホスト・インタフェース・バッ
ファ領域は、ホスト←→マイクロプロセッサ間で一度に
転送すべき最大データ量分だけ確保し、第3図のような
形にする必要がある。第3図(a)は−度に転送するデ
ータを連続アドレスに限定するもので、ホスト計算機か
ら指定したアドレスから指定データ数分だけデータ転送
する。また、これとは別にコマンドを指定してマイクロ
プロセッサに所定の処理を実行させる(サーボ・オン/
オフなど)。この場合、マイクロプロセッサのメモリ・
マツプは、同一コマント処理に関連したデータを全て連
続したアドレスに配置しておく必要がある。第3図(ト
))は転送データのアドレスを一つずつ指定してマイク
ロプロセッサに転送先を示す方法であり、この場合はコ
マンドは成るアドレスに固定で割付けておけば良い。
に問題になる。これを実現するために、転送コマンド受
付時に同一サンプリング内で全てのパラメータを転送す
る必要がある。そこで、ホスト・インタフェース・バッ
ファ領域は、ホスト←→マイクロプロセッサ間で一度に
転送すべき最大データ量分だけ確保し、第3図のような
形にする必要がある。第3図(a)は−度に転送するデ
ータを連続アドレスに限定するもので、ホスト計算機か
ら指定したアドレスから指定データ数分だけデータ転送
する。また、これとは別にコマンドを指定してマイクロ
プロセッサに所定の処理を実行させる(サーボ・オン/
オフなど)。この場合、マイクロプロセッサのメモリ・
マツプは、同一コマント処理に関連したデータを全て連
続したアドレスに配置しておく必要がある。第3図(ト
))は転送データのアドレスを一つずつ指定してマイク
ロプロセッサに転送先を示す方法であり、この場合はコ
マンドは成るアドレスに固定で割付けておけば良い。
第3図(C)は、マイクロプロセッサがリアルタイムで
用いるメモリ領域と全く同一サイズのパンファを用意す
るものである。これらは、マイクロプロセッサのメモリ
空間のサイズや処理スピード等によって適当なものを選
択すれば良い。
用いるメモリ領域と全く同一サイズのパンファを用意す
るものである。これらは、マイクロプロセッサのメモリ
空間のサイズや処理スピード等によって適当なものを選
択すれば良い。
第4図は本発明と従来例の演算処理の比較を示す図であ
る。本発明の演算処理と従来の演算処理を比較すると、
第4図のようになる。力信号FHを入力してから操作量
uを更新するまでの時間については本発明も従来例も略
ぼ同じであるが、本発明によればサーボ系(マイクロプ
ロセンサ#1)のサンプリング周期を半減でき、また、
演算時間遅れを著しく減少できる。この結果、サーボ系
のみならず力制御系全体の特性を向上させることが出来
る。なお、力制御の座標変換で用いるθは1ステップ前
の値であるが、この程度の誤差は力制御演算において大
きな影響を与えない(サンプリング周期はIKHz程度
)。
る。本発明の演算処理と従来の演算処理を比較すると、
第4図のようになる。力信号FHを入力してから操作量
uを更新するまでの時間については本発明も従来例も略
ぼ同じであるが、本発明によればサーボ系(マイクロプ
ロセンサ#1)のサンプリング周期を半減でき、また、
演算時間遅れを著しく減少できる。この結果、サーボ系
のみならず力制御系全体の特性を向上させることが出来
る。なお、力制御の座標変換で用いるθは1ステップ前
の値であるが、この程度の誤差は力制御演算において大
きな影響を与えない(サンプリング周期はIKHz程度
)。
〔実施例]
第5図は位置と力のハイブリッド制御の実施例を示すブ
ロック図である。同図において、30はロボット・マユ
ブレーク、31はモータ、33はエンコーダ&カウンタ
、34はパワーアンプ、35はD/A変換器、36はサ
ーボ演算・関数発生部、37は力センサ−,38は座標
変換部、39も座標変換部、40は逆ヤコビ行列演算部
、41は力制御部、42は位置制御部、43は速度サー
ボ系をそれぞれ示している。
ロック図である。同図において、30はロボット・マユ
ブレーク、31はモータ、33はエンコーダ&カウンタ
、34はパワーアンプ、35はD/A変換器、36はサ
ーボ演算・関数発生部、37は力センサ−,38は座標
変換部、39も座標変換部、40は逆ヤコビ行列演算部
、41は力制御部、42は位置制御部、43は速度サー
ボ系をそれぞれ示している。
第13図は単なる力制御系であ′るのに対して、第5図
は力制御と位置制御を組み合わせたハイプリント制御と
呼ばれるものである。ハイブリッド制御については、例
えばM、l+、Ra1bert、Hybrid Po5
ition/Force Control of Ma
nipulators、ASME、1981に記載され
ている。第5図の中において、右半分(43,30,3
7,38,4L 40)が力制御部で第13図に対応
し、それに対して第5図の左半分は位置制御系を表して
いる。ハイブリッド制御は、位置制御と力制御の方向を
直交する方向にとることにより、拘束条件下で運動を実
現しようとするものである。第5図は多関節のロボット
・マニプレータを使用して対象物表面を倣い加工する場
合の制御系を示すものである。速度サーボ系43は、モ
ータ31、エンコーダ&カウンタ33、パーアンプ34
、D/A変換器35及びサーボ演算・関数発生部36を
有している。速度サーボ系43は、自由度の数だけ存在
する。ロボット・マニプレータ10の先端にはハンド(
図示せず)が取り付けられ、ハンドの成る1点に作用す
る力は、マユブレークの手首部分に装着された力センサ
−37によって検出される。ハンド座標系(Xゎ、Yh
、Zb)で検出した力F hは、座標変換部38におい
てロボット基準座標系(X、。
は力制御と位置制御を組み合わせたハイプリント制御と
呼ばれるものである。ハイブリッド制御については、例
えばM、l+、Ra1bert、Hybrid Po5
ition/Force Control of Ma
nipulators、ASME、1981に記載され
ている。第5図の中において、右半分(43,30,3
7,38,4L 40)が力制御部で第13図に対応
し、それに対して第5図の左半分は位置制御系を表して
いる。ハイブリッド制御は、位置制御と力制御の方向を
直交する方向にとることにより、拘束条件下で運動を実
現しようとするものである。第5図は多関節のロボット
・マニプレータを使用して対象物表面を倣い加工する場
合の制御系を示すものである。速度サーボ系43は、モ
ータ31、エンコーダ&カウンタ33、パーアンプ34
、D/A変換器35及びサーボ演算・関数発生部36を
有している。速度サーボ系43は、自由度の数だけ存在
する。ロボット・マニプレータ10の先端にはハンド(
図示せず)が取り付けられ、ハンドの成る1点に作用す
る力は、マユブレークの手首部分に装着された力センサ
−37によって検出される。ハンド座標系(Xゎ、Yh
、Zb)で検出した力F hは、座標変換部38におい
てロボット基準座標系(X、。
Y、、Z、)の値F、に変換され、力制御部41に入力
される。エンコーダ&カウンタ33で検出された各関節
角θ、は座標変換部39によってハンドの位置姿勢Xr
に変換される。マニプレータは、速度指令v0と、位置
制御部42で生成された速度指令vpと、力制御パラメ
ータをもとに力制御部41で生成された速度指令■、と
の和v=vp+vp+vr に従って動作する。基準座標系における速度■を生成す
るためのマニプレータの各関節速度iは逆ヤコビ行列演
算部40で算出され、 θ−J−1・■ で与えられる。J−1は逆ヤコビ行列である。速度サー
ボ系43がδを実現することにより、マニプレータが動
作する。な゛お、第5図の詳細は特願昭62−3046
06号に記載されている。
される。エンコーダ&カウンタ33で検出された各関節
角θ、は座標変換部39によってハンドの位置姿勢Xr
に変換される。マニプレータは、速度指令v0と、位置
制御部42で生成された速度指令vpと、力制御パラメ
ータをもとに力制御部41で生成された速度指令■、と
の和v=vp+vp+vr に従って動作する。基準座標系における速度■を生成す
るためのマニプレータの各関節速度iは逆ヤコビ行列演
算部40で算出され、 θ−J−1・■ で与えられる。J−1は逆ヤコビ行列である。速度サー
ボ系43がδを実現することにより、マニプレータが動
作する。な゛お、第5図の詳細は特願昭62−3046
06号に記載されている。
第6図は第5図の制御系を2個のマイクロプロセッサ(
DSP)を使用して実現した場合におけるマイクロプロ
セッサの処理手順の例を示す図である。第5図の制御系
の場合、位置制御パラメータや力制′41「パラメータ
等を状況に応じてリアルタイムで変更する必要があり、
これらのパラメータを一括転送可能なバッファ・エリア
をそれぞれDSPのメモリ空間に第3図(a)の形で設
けている。
DSP)を使用して実現した場合におけるマイクロプロ
セッサの処理手順の例を示す図である。第5図の制御系
の場合、位置制御パラメータや力制′41「パラメータ
等を状況に応じてリアルタイムで変更する必要があり、
これらのパラメータを一括転送可能なバッファ・エリア
をそれぞれDSPのメモリ空間に第3図(a)の形で設
けている。
このタイプを選んだのはDSPのメモリ空間が小さいた
め(内部RAM256ワード)である。DSPの場合、
三角関数のライブラリが用意されていないので、近似計
算を先ず行い、これを用いて位置制御部および力制御部
などの演算を行う。
め(内部RAM256ワード)である。DSPの場合、
三角関数のライブラリが用意されていないので、近似計
算を先ず行い、これを用いて位置制御部および力制御部
などの演算を行う。
第6図に示すように、1側のマイクロプロセッサ11で
は下記のような処理が行われる。
は下記のような処理が行われる。
■ サンプリング・クロックSCKのトリガ発生をチェ
ックし、サンプリング・タイミングならば、[2]の処
理に進む。
ックし、サンプリング・タイミングならば、[2]の処
理に進む。
■ DMAで関節指示速度δを2側のマイクロプロセッ
サからリードする。
サからリードする。
■ エンコーダ・カウンタから角度θ、を入力する。
■ サーボ演算を行い、操作量Uを出力する。
■ 関数発生を行う。
■ 角度θ、をDMAで2側のマイクロプロセッサに書
き込む。
き込む。
■ コマンド解析を行う。
■ コマンドを実行する。
2例のマイクロプロセッサ12では下記のような処理が
行われる。
行われる。
■ サンプリング・クロックSCKのトリガ発生をチェ
ックし、サンプリング・タイミングならば、[2]の処
理に進む。
ックし、サンプリング・タイミングならば、[2]の処
理に進む。
■ 三角関数の演算を行う。
■ 座標変換39より現在位置X、、を求める。
■ 位置制御部42の演算により位置制御方向の速度ベ
クトルv、を算出する。
クトルv、を算出する。
■ 力センサーからセンサー信号F5を入力する。
■ F、をF、に座標変換する。
■ 力制御部41で力の偏差ベクトルF、−F。
に基づき力制御方向の速度ベクトルVrを求める。
■ 速度指令v0とV、とV、の和にJ−1を施し、関
節指示速度iを求める。
節指示速度iを求める。
■°コマンドを解析する。
[相] コマンドを実行する。
上記のようなハイブリッド制御の場合も、本発明の原理
を適用することにより、通常のシーケンシャルな処理を
行う方法に比べ、特性の良い制御系が実現できる。
を適用することにより、通常のシーケンシャルな処理を
行う方法に比べ、特性の良い制御系が実現できる。
次に、本発明のディジタル制御装置のハードウェア構成
を詳細に説明する。第7図はマルチパスとDSP間及び
DSP相互間のインタフェースを示す図である。同図に
おいて、51と52はDMAコントローラ、53ないし
60はバス・バッファ、61と62はボード、*ECE
は拡張メモリ・セレクト、本へ〇ENはアドレス入力イ
ネーフ゛ル、*DTENはデータ人力イネーブル、*O
Cはデータ出力イネーブルをそれぞれ示している。
を詳細に説明する。第7図はマルチパスとDSP間及び
DSP相互間のインタフェースを示す図である。同図に
おいて、51と52はDMAコントローラ、53ないし
60はバス・バッファ、61と62はボード、*ECE
は拡張メモリ・セレクト、本へ〇ENはアドレス入力イ
ネーフ゛ル、*DTENはデータ人力イネーブル、*O
Cはデータ出力イネーブルをそれぞれ示している。
ボード61には、マイクロプロセッサ11や外部メモリ
13、DMAコントローラ51、バス・バッファ53、
バス・バッファ55、バス・バッファ57、バス・バッ
ファ59等が搭載されている。ボード62は、ボード6
1と同じ構成を有している。DMAコントローラ51は
、DSPコントロール・バスを介してマイクロプロセッ
サ11と接続されると共に、DSP間コントロール・バ
スを介してDMAコントローラ52と接続されている。
13、DMAコントローラ51、バス・バッファ53、
バス・バッファ55、バス・バッファ57、バス・バッ
ファ59等が搭載されている。ボード62は、ボード6
1と同じ構成を有している。DMAコントローラ51は
、DSPコントロール・バスを介してマイクロプロセッ
サ11と接続されると共に、DSP間コントロール・バ
スを介してDMAコントローラ52と接続されている。
DMAコントローラ51.52は、プログラマブル論理
アレイで構成される。バス・バッファ53は、DSP間
データバスを介してバス・バッファ54と接続されてい
る。バス・バッファ55はマルチパス上のアドレスをボ
ード61の外部データバス上に取り込むものであり、バ
ス・バッファ57はマルチパス上のデータをボード61
の外部データバスに取り込むものであり、バス・バッフ
ァ59はボード61の外部データバスのデータをマルチ
パスに出力するものである。マルチパスは、例えばIn
te1社のマルチパスである。*ECEは、DMA転送
時と外部メモリ使用時を区別するための信号であり、こ
れを用いて外部メモリをチップ・セレクトする。ホスト
計算機から各マイクロプロセッサ11.12に対して書
込み命令が出されると、上位のアドレスがデコードされ
、Aモード・シーケンスが実行される。各マイクロプロ
セッサ11.12のメモリ・アドレスは*ADENのタ
イミングで取り込まれ、データは*DTENのタイミン
グで取り込まれる。逆に、ホスト計算機から各マイクロ
プロセッサ11.12に対して読込み命令が出されると
、Aモード・シーケンスに続いてIモード・シーケンス
が実行され、*OCのタイミングでマルチパスにデータ
が出力される。DSP相互間のデータ転送は、*A叶倍
信号出力要求)が出力されることにより開始される。
アレイで構成される。バス・バッファ53は、DSP間
データバスを介してバス・バッファ54と接続されてい
る。バス・バッファ55はマルチパス上のアドレスをボ
ード61の外部データバス上に取り込むものであり、バ
ス・バッファ57はマルチパス上のデータをボード61
の外部データバスに取り込むものであり、バス・バッフ
ァ59はボード61の外部データバスのデータをマルチ
パスに出力するものである。マルチパスは、例えばIn
te1社のマルチパスである。*ECEは、DMA転送
時と外部メモリ使用時を区別するための信号であり、こ
れを用いて外部メモリをチップ・セレクトする。ホスト
計算機から各マイクロプロセッサ11.12に対して書
込み命令が出されると、上位のアドレスがデコードされ
、Aモード・シーケンスが実行される。各マイクロプロ
セッサ11.12のメモリ・アドレスは*ADENのタ
イミングで取り込まれ、データは*DTENのタイミン
グで取り込まれる。逆に、ホスト計算機から各マイクロ
プロセッサ11.12に対して読込み命令が出されると
、Aモード・シーケンスに続いてIモード・シーケンス
が実行され、*OCのタイミングでマルチパスにデータ
が出力される。DSP相互間のデータ転送は、*A叶倍
信号出力要求)が出力されることにより開始される。
第8図はDMAコントローラの入出力信号を示す図であ
る。本へ〇ENはアドレス人力イネーブル、*DTEN
はデータ人力イネーブル、*OCはデータ出力イネーフ
゛ル、本RDはマルチパス・リード・コマンド、*WT
はマルチパス・ライト・コマンF、mAOFは出力要求
、*BCTは出力許可、*WCKは出力同期クロック、
本Atpは入力要求、*ACTは入力許可、本RCには
入力クロックをそれぞれ示している。また、*oAop
のようにDが付加された信号は、DSP間専用の信号で
あり、意味は上記のものに対応する。
る。本へ〇ENはアドレス人力イネーブル、*DTEN
はデータ人力イネーブル、*OCはデータ出力イネーフ
゛ル、本RDはマルチパス・リード・コマンド、*WT
はマルチパス・ライト・コマンF、mAOFは出力要求
、*BCTは出力許可、*WCKは出力同期クロック、
本Atpは入力要求、*ACTは入力許可、本RCには
入力クロックをそれぞれ示している。また、*oAop
のようにDが付加された信号は、DSP間専用の信号で
あり、意味は上記のものに対応する。
第9図はDMAコントローラのAモード時の状態遷移を
示す図である。状態SOにおいて*RD=1.mWT・
1及び*D^IF=1になっても、状態はSOのままで
ある。状態SOにおいて*RD・0または傘−T・0で
あり且つ*DA I F・1になると、状態はSIOに
遷移する。
示す図である。状態SOにおいて*RD=1.mWT・
1及び*D^IF=1になっても、状態はSOのままで
ある。状態SOにおいて*RD・0または傘−T・0で
あり且つ*DA I F・1になると、状態はSIOに
遷移する。
状態S10において様CT= 1になっても状態はSL
Oのままであり、*ACT=0になると状態はSllに
遷移する。Sllに遷移した後、クロックCKIに同期
してS12.S13.S14.S15.S16と遷移す
る。状態S工6においては*ACT・0になっても状態
は変化せず、*ACT・1になると317に遷移する。
Oのままであり、*ACT=0になると状態はSllに
遷移する。Sllに遷移した後、クロックCKIに同期
してS12.S13.S14.S15.S16と遷移す
る。状態S工6においては*ACT・0になっても状態
は変化せず、*ACT・1になると317に遷移する。
状態S17において寧RD=0または*WT=Oになっ
ても状態は変化せず、本RD。
ても状態は変化せず、本RD。
1で且つ本−T・1になると、状態はSOに遷移する。
状態SOにおいて*DAIF・0になると、状態はS2
0に遷移する。状B520において*ACT・1になっ
ても状態は変化せず、峠CT・0になると、状態はS2
1に遷移する。状態S21において*ACT=Oになっ
ても状態は変化せず、本ACT・1になると状態はSO
に遷移する。
0に遷移する。状B520において*ACT・1になっ
ても状態は変化せず、峠CT・0になると、状態はS2
1に遷移する。状態S21において*ACT=Oになっ
ても状態は変化せず、本ACT・1になると状態はSO
に遷移する。
Δモードの各状態におけるDMAコントローラからの信
号出力は、下記のようになる。
号出力は、下記のようになる。
So : *^IF=1.*RCK=1.*ADE
N=1.*DTEN=1.*ACK=1.*DACT=
1 S10:傘A IF=0. *RCK=1. *ADE
N=*ACT、 DTEN=1−^cg=t。
N=1.*DTEN=1.*ACK=1.*DACT=
1 S10:傘A IF=0. *RCK=1. *ADE
N=*ACT、 DTEN=1−^cg=t。
*DACT=1
Sll: *AIF=帆*RCK=O,*ADEN=
O,*DTEN=1 、*ACK=1.本DACT=1 S12: 傘AIF・o、*pcK・l、*ADEN=
O,本DTIEN=1.*ACK=1.*D八CT・l 513: ネへIP=1.*RCK=1.傘ADEN=
1.ネ[]TIEN=0.傘八CK=1.ネD八CT=
1 S14: *^IF・11本RCK=O,*ADEN
=1.*DTEN=O,*ACK=1.本D^CT=1 S15: *AりF=1.ネRCK=1.*ADEN
=1.宰DTEN=O,本ACK=1 、*[]ACT
=1 S16二 本AIF=1.本R(J=1.*ADEN=
1.本DTEN=1.車八CK=1.本り八CT、l 517二 本AIF=1.本RCK=1.*ADEN工
1.*DTEN=1.mACK=*讐T。
O,*DTEN=1 、*ACK=1.本DACT=1 S12: 傘AIF・o、*pcK・l、*ADEN=
O,本DTIEN=1.*ACK=1.*D八CT・l 513: ネへIP=1.*RCK=1.傘ADEN=
1.ネ[]TIEN=0.傘八CK=1.ネD八CT=
1 S14: *^IF・11本RCK=O,*ADEN
=1.*DTEN=O,*ACK=1.本D^CT=1 S15: *AりF=1.ネRCK=1.*ADEN
=1.宰DTEN=O,本ACK=1 、*[]ACT
=1 S16二 本AIF=1.本R(J=1.*ADEN=
1.本DTEN=1.車八CK=1.本り八CT、l 517二 本AIF=1.本RCK=1.*ADEN工
1.*DTEN=1.mACK=*讐T。
*DACT=1
S20: *AIF−本DAIF、本DACT=1.
*RCK=1.*^DEN=L、*DTEN=11本A
CK=1 S21: 本AIF=ネDAIF、*DACT=*AC
T、*RCK−*DRCK、車ADEN=1、*DTE
N=1.*DTEN・II*八Cへ、1第10図はAモ
ードのタイミング・チャートである。先ず、マルチパス
からDSPI(又はDSP2)にデータを転送する場合
について説明する。
*RCK=1.*^DEN=L、*DTEN=11本A
CK=1 S21: 本AIF=ネDAIF、*DACT=*AC
T、*RCK−*DRCK、車ADEN=1、*DTE
N=1.*DTEN・II*八Cへ、1第10図はAモ
ードのタイミング・チャートである。先ず、マルチパス
からDSPI(又はDSP2)にデータを転送する場合
について説明する。
状態SOにおいて*WT=Oになると、状態はSIOに
遷移する。なお、状態遷移はクロックCK 1 (16
KHz)に同期して行われる。状態SIOにおいては、
本AIF=O。
遷移する。なお、状態遷移はクロックCK 1 (16
KHz)に同期して行われる。状態SIOにおいては、
本AIF=O。
傘RCK=1.*ADENニネACT、DTI’N=1
.*AIJ=1.本DACT=1になる。なお、mA(
Jはコマンドに対する応答(アクノリッジ)信号である
。状態SIOにおいて率ACT=0になると、状態はS
llに遷移する。状BSIIにおいては、 *AIF=
O,*RCK=O,*八DEN=O,*DTEN=1へ
、本ACK=1.*DACT=1である。状態S11に
おいてクロック(、Klが立ち上がると、状態はSll
からS12に遷移する。
.*AIJ=1.本DACT=1になる。なお、mA(
Jはコマンドに対する応答(アクノリッジ)信号である
。状態SIOにおいて率ACT=0になると、状態はS
llに遷移する。状BSIIにおいては、 *AIF=
O,*RCK=O,*八DEN=O,*DTEN=1へ
、本ACK=1.*DACT=1である。状態S11に
おいてクロック(、Klが立ち上がると、状態はSll
からS12に遷移する。
状態S12においては、本AIF・01本RCK= 1
、本ADEN・01本DTEN= 1 、5ACK・
1.傘DACT・1である。状態S12においてクロッ
クCKIが立ち上がると、状態はS12から513に遷
移する。状態313′においては、*AIF=1.*R
CK211本ADEN=1. *DTEN=O,*AC
K=l 、 *DACT=1である。状態S13におい
てクロックCKIが立ち上がると、状態はS13からS
14に遷移する。状態S14においては、寧AIF=1
.本RCK=O,*^DEN=1.*DTEN=O,*
^CK=1 、 *DACT・1である。状JIQS1
4においてクロックCKIが立ち上がると、状態はS1
4から315に遷移する。状態S15においては、*A
tp=t、傘RCK=1.*ADEN・1 、 *DT
EN・Q、 *ACK=1.本DACT=1である。状
B515においてクロックCKIが立ち上がると、状態
は316に遷移する。状態S16においては、*AIF
=1.*RCK=1.*ADEN=1、車DTEN=1
.本ACに=1.’*DACT・1である。状jlJ
S 16において様CT= 1になると、状態はS16
から517に遷移する。状MS17におし1ては、*A
IF=1.*RCK・11本八へEN=1.本DTEN
=1.本^CK=本−T1本DACT=1である。状態
S17において本−丁・1になると、状態はS17から
SOに遷移する。
、本ADEN・01本DTEN= 1 、5ACK・
1.傘DACT・1である。状態S12においてクロッ
クCKIが立ち上がると、状態はS12から513に遷
移する。状態313′においては、*AIF=1.*R
CK211本ADEN=1. *DTEN=O,*AC
K=l 、 *DACT=1である。状態S13におい
てクロックCKIが立ち上がると、状態はS13からS
14に遷移する。状態S14においては、寧AIF=1
.本RCK=O,*^DEN=1.*DTEN=O,*
^CK=1 、 *DACT・1である。状JIQS1
4においてクロックCKIが立ち上がると、状態はS1
4から315に遷移する。状態S15においては、*A
tp=t、傘RCK=1.*ADEN・1 、 *DT
EN・Q、 *ACK=1.本DACT=1である。状
B515においてクロックCKIが立ち上がると、状態
は316に遷移する。状態S16においては、*AIF
=1.*RCK=1.*ADEN=1、車DTEN=1
.本ACに=1.’*DACT・1である。状jlJ
S 16において様CT= 1になると、状態はS16
から517に遷移する。状MS17におし1ては、*A
IF=1.*RCK・11本八へEN=1.本DTEN
=1.本^CK=本−T1本DACT=1である。状態
S17において本−丁・1になると、状態はS17から
SOに遷移する。
次に、DSPI(又はDSP2)からDSP2(DSP
I)にデータを転送する場合について説明する。状態S
Oにおいて*DA IF、Oになると、状態はSOから
320に遷移する。状B520においては、本AIF=
傘DAIF、本DACT=1 、*RCK=1.*AD
EN工l1本口TEN=1.本ACK・1である。状態
S20において*ACT=Oになると、状態はS20か
ら321に遷移する。状態S21においては、 率^I
F=*DAIF、*DACT=*^CT、宰RCK=*
DRCK、*ADEN・l 、 *DTIl!N・19
本口TEN・15本ACK・1である。状態S21にお
いて本AC?=1になると、状態はS21からSOに遷
移する。
I)にデータを転送する場合について説明する。状態S
Oにおいて*DA IF、Oになると、状態はSOから
320に遷移する。状B520においては、本AIF=
傘DAIF、本DACT=1 、*RCK=1.*AD
EN工l1本口TEN=1.本ACK・1である。状態
S20において*ACT=Oになると、状態はS20か
ら321に遷移する。状態S21においては、 率^I
F=*DAIF、*DACT=*^CT、宰RCK=*
DRCK、*ADEN・l 、 *DTIl!N・19
本口TEN・15本ACK・1である。状態S21にお
いて本AC?=1になると、状態はS21からSOに遷
移する。
第11図はDMAコントローラの■モード時の状B遷移
を示す図である。状BSOにおいて*Aop・1又は様
CT=O又は*DBCT=1 になっても、状態はSO
のままである。状態SOにおいて本Aop・Q、 車A
CT=1及び傘DBCT=Oになると、状態はSOから
Slに遷移する。
を示す図である。状BSOにおいて*Aop・1又は様
CT=O又は*DBCT=1 になっても、状態はSO
のままである。状態SOにおいて本Aop・Q、 車A
CT=1及び傘DBCT=Oになると、状態はSOから
Slに遷移する。
状態S1において、*AOF=1又は本WCK=1にな
っても状態は変化ぜず、*AOF・0.*騙CK=0及
び*U・7であると、状態はSlからS2に遷移する。
っても状態は変化ぜず、*AOF・0.*騙CK=0及
び*U・7であると、状態はSlからS2に遷移する。
なお、U−(014,Di3.012 )であり、機蕃
を表す。なお、DSPIに対しては機番1、DSP2に
対しては機番2、マルチパス・マスクに対しては仮想的
に機番7が設定されている。状態S2において、峠op
=o又は本WCK・0になっても状態は変化せず、4叶
・1で且つ峠CK・0であると、状態はS2から83に
遷移する。状態S3においてクロックCK2が立ち上が
ると、状態はS4に遷移する。状態S4において、宰R
D・0になっても状態は変化せず、*Ro=iであると
、状態はS4からSOに遷移する。状態S1において本
AOF=0. *WCK=O及び*U≠7になると、状
態はSlから311に遷移する。
を表す。なお、DSPIに対しては機番1、DSP2に
対しては機番2、マルチパス・マスクに対しては仮想的
に機番7が設定されている。状態S2において、峠op
=o又は本WCK・0になっても状態は変化せず、4叶
・1で且つ峠CK・0であると、状態はS2から83に
遷移する。状態S3においてクロックCK2が立ち上が
ると、状態はS4に遷移する。状態S4において、宰R
D・0になっても状態は変化せず、*Ro=iであると
、状態はS4からSOに遷移する。状態S1において本
AOF=0. *WCK=O及び*U≠7になると、状
態はSlから311に遷移する。
状態511において、*DBCT=Oになっても状態は
変化せず、本DBCT・1であると、状態はSllから
Soに遷移する。
変化せず、本DBCT・1であると、状態はSllから
Soに遷移する。
■モードの各状態におけるDMAコントローラからの信
号出力は下記のようになる。
号出力は下記のようになる。
SO: 本BCT=1.傘0C=1.*ACK=1.
本0AOF−本AOForNOT本ACT。
本0AOF−本AOForNOT本ACT。
*DWCK=本−CM
Sl: 傘BCT=0.本0C=1.*ACK=1.
車DAOF=*AOForNOT*ACT、*DWCK
=本−CK S2: 本BCT=O,本0C=1.本ACK=1.
傘DAOF−本AOForNOT*ACT。
車DAOF=*AOForNOT*ACT、*DWCK
=本−CK S2: 本BCT=O,本0C=1.本ACK=1.
傘DAOF−本AOForNOT*ACT。
*DWCK=*WCK
S3: JCT=O,本0C=O,*ACK=1.*
DAOF=*八0ForNOT*ACT。
DAOF=*八0ForNOT*ACT。
*DWCK=*WCK
S4: JCT=本DBCT、*OC=本RD、傘A
CK=本RD、*0AOF=*AOForNOT*八C
T、*DWCK−本WCKSll: *[1CT=本
DBCT、*0C=l、*^CK=1.*DAOF=*
AOForNOT*ACT、本DWCK、車−CK 第12図は■モードのタイミング・チャートを示す図で
ある。先ず、DSPI(又はDSP2)からマルチパス
へのデータ転送について説明する。
CK=本RD、*0AOF=*AOForNOT*八C
T、*DWCK−本WCKSll: *[1CT=本
DBCT、*0C=l、*^CK=1.*DAOF=*
AOForNOT*ACT、本DWCK、車−CK 第12図は■モードのタイミング・チャートを示す図で
ある。先ず、DSPI(又はDSP2)からマルチパス
へのデータ転送について説明する。
状BSOにおいては、*BCT=1.*0C=1.本A
CK=1.本DAOF=*AOForNOT本^CT、
*DWCK=本WCKである。状態SOにおいて*A
OF・0.*ACT・1及び本DBCT・0になると、
状態はSOから31に遷移する。なお、状態遷移はクロ
ックCK2に同期して行われる。状BS1においては*
BCT=0.*0C=1 、*へCK=1.*DAOF
−*AOForNOT*ACT 、本DWCK=*W
CKである。状BS1において、*AOF=O,*WC
K=0及びU=7であると、状態はSlから32に遷移
する。状態S2においては、*BCT=O,*0C=1
、 *ACK=1. *DAOF=*AOForNO
T*ACT、 *DWCK=*WCKである。状態S2
において様OF・1で且つdcK・0であると、状態は
S2から83に遷移する。状US3においては*BCT
・0.*0C=O,*^CK=1、本0^OF=本AO
ForNOT*ACT、 傘DWCK=*WCKである
。 状態S3においてクロックCK2が立ち上がると、
状態はS3から84に遷移する。状態S4においては、
*BCT・本DBCT、 *OC=*RD、 *ACK
=*RD、 *D^OF=*^0ForNOT*ACT
、 *DWCK−傘−CKである。状態S4において*
RD=1になると、状態はS4からSOに遷移する。
CK=1.本DAOF=*AOForNOT本^CT、
*DWCK=本WCKである。状態SOにおいて*A
OF・0.*ACT・1及び本DBCT・0になると、
状態はSOから31に遷移する。なお、状態遷移はクロ
ックCK2に同期して行われる。状BS1においては*
BCT=0.*0C=1 、*へCK=1.*DAOF
−*AOForNOT*ACT 、本DWCK=*W
CKである。状BS1において、*AOF=O,*WC
K=0及びU=7であると、状態はSlから32に遷移
する。状態S2においては、*BCT=O,*0C=1
、 *ACK=1. *DAOF=*AOForNO
T*ACT、 *DWCK=*WCKである。状態S2
において様OF・1で且つdcK・0であると、状態は
S2から83に遷移する。状US3においては*BCT
・0.*0C=O,*^CK=1、本0^OF=本AO
ForNOT*ACT、 傘DWCK=*WCKである
。 状態S3においてクロックCK2が立ち上がると、
状態はS3から84に遷移する。状態S4においては、
*BCT・本DBCT、 *OC=*RD、 *ACK
=*RD、 *D^OF=*^0ForNOT*ACT
、 *DWCK−傘−CKである。状態S4において*
RD=1になると、状態はS4からSOに遷移する。
次に、DSPI(又はDSP2)からDSP2(DSP
I)にデータを転送する場合について説明する。状態S
1において、車AOF=0−匈CK、O及びU≠7であ
ると、状態はSlからSllに遷移する。状態Sllに
おいては、本BCT=本DBCT、*0C=1.*AC
K=1.*[1AOF−寧A叶orNOT本AcT、
本DWCK=*WCKである。状態SllにおいてネD
BCT・1になると、状態はSllからSOに遷移する
。
I)にデータを転送する場合について説明する。状態S
1において、車AOF=0−匈CK、O及びU≠7であ
ると、状態はSlからSllに遷移する。状態Sllに
おいては、本BCT=本DBCT、*0C=1.*AC
K=1.*[1AOF−寧A叶orNOT本AcT、
本DWCK=*WCKである。状態SllにおいてネD
BCT・1になると、状態はSllからSOに遷移する
。
以上の説明から明らかなように、本発明によれば、力と
位置を同時に制御する力制御系において、サンプリング
周期を短くできると共に、サーボの演算時間遅れを著し
く減少することが出来るので、制御系全体の特性を向上
させることが出来、また、それぞれのマイクロプロセッ
サの内部処理とは独立に、ホスト計算機から非同期に所
定のコマンドやパラメータを送信することが出来る。
位置を同時に制御する力制御系において、サンプリング
周期を短くできると共に、サーボの演算時間遅れを著し
く減少することが出来るので、制御系全体の特性を向上
させることが出来、また、それぞれのマイクロプロセッ
サの内部処理とは独立に、ホスト計算機から非同期に所
定のコマンドやパラメータを送信することが出来る。
第1図は本発明のディジタル制御装置のハードウェア構
成を示す図、第2図は本発明におけるマイクロプロセッ
サの処理手順を示す図、第3図は本発明におけるホスト
・インタフェース・バッファの例を示す図、第4図は本
発明と従来例の演算処理の比較を示す図、第5図は位置
と力のハイブリッド制御の実施例を示す図、第6図は第
5図の制御系を2個のマイクロプロセッサを使用して実
現した場合におけるマイクロプロセッサの処理手順の例
を示す図、第7図はマルチパスとDSP間およびDSP
相互間のインタフェースを示す図、第8図はDMAコン
トローラの入出力信号を示す図、第9図はDMAコント
ローラのAモード時の状態遷移を示す図、第10図はD
MAコントローラのAモード時のタイミング・チャート
を示す図、第11図はDMAコントローラのIモード時
の状態遷移を示す図、第12図はDMAコントローラの
Iモード時のタイミング・チャートを示す図、第13図
は多関節ロボットの力制御系の例を示す図、第14図は
従来の力制御系のハードウェア構成例を示す図、第15
図は6関節ロボットの例を示す図である。 11と12・・・マイクロプロセッサ、13と14・・
・外部メモリ、15と16・・弓10装置、17と18
・・・ローカル・バス、19と20・・・バス、21・
・・同期用クロック源、22・・・DMAシーケンス制
御部、23・・・ホスト・インクフェース制御部、24
・・・ホスト計算機、30・・・ロボット・マユブレー
ク、31・・・モータ、33・・・エンコーダ&カウン
タ、34・・・パワーアンプ、35・・・D/A変tA
2N、36・・・サーボ演算・関数発生部、37・・
・力センサ−,38・・・座標変換部、3つ・・・座標
変換部、40・・・逆ヤコビ行列演算部、41・・・力
制御部、42・・・位置制御部、43・・・速度サーボ
系、51と52・・・DMAコントローラ、53ないし
60・・・ハス・バッファ、61と62・・・ボード。 特許出願人 富士通株式会社 代理人弁理士 京 谷 四 部 (a) (b) (c) ホスト・イングツニー久・バヅファの杖を十分A第3図 イfLLと力のハイフ゛リッド惨I?JPの*方匪分」
第5図 マルケノ(人ヒDSPM及ドDSP湘亙間乃イングフェ
ース尭7図 DMAコントローラの入出カイ芭号 浦8図 DMAコントローラのAモード時の状態、遷木多M9図 ■@■O■O@ ■[相] ■■■(2)O■■ − 京AOF=1 or *ACT=O or * DBCT = l DMAコンドローラリIモード吟の伏胱l神M11図 ■■@■[有]■[相] [相]
成を示す図、第2図は本発明におけるマイクロプロセッ
サの処理手順を示す図、第3図は本発明におけるホスト
・インタフェース・バッファの例を示す図、第4図は本
発明と従来例の演算処理の比較を示す図、第5図は位置
と力のハイブリッド制御の実施例を示す図、第6図は第
5図の制御系を2個のマイクロプロセッサを使用して実
現した場合におけるマイクロプロセッサの処理手順の例
を示す図、第7図はマルチパスとDSP間およびDSP
相互間のインタフェースを示す図、第8図はDMAコン
トローラの入出力信号を示す図、第9図はDMAコント
ローラのAモード時の状態遷移を示す図、第10図はD
MAコントローラのAモード時のタイミング・チャート
を示す図、第11図はDMAコントローラのIモード時
の状態遷移を示す図、第12図はDMAコントローラの
Iモード時のタイミング・チャートを示す図、第13図
は多関節ロボットの力制御系の例を示す図、第14図は
従来の力制御系のハードウェア構成例を示す図、第15
図は6関節ロボットの例を示す図である。 11と12・・・マイクロプロセッサ、13と14・・
・外部メモリ、15と16・・弓10装置、17と18
・・・ローカル・バス、19と20・・・バス、21・
・・同期用クロック源、22・・・DMAシーケンス制
御部、23・・・ホスト・インクフェース制御部、24
・・・ホスト計算機、30・・・ロボット・マユブレー
ク、31・・・モータ、33・・・エンコーダ&カウン
タ、34・・・パワーアンプ、35・・・D/A変tA
2N、36・・・サーボ演算・関数発生部、37・・
・力センサ−,38・・・座標変換部、3つ・・・座標
変換部、40・・・逆ヤコビ行列演算部、41・・・力
制御部、42・・・位置制御部、43・・・速度サーボ
系、51と52・・・DMAコントローラ、53ないし
60・・・ハス・バッファ、61と62・・・ボード。 特許出願人 富士通株式会社 代理人弁理士 京 谷 四 部 (a) (b) (c) ホスト・イングツニー久・バヅファの杖を十分A第3図 イfLLと力のハイフ゛リッド惨I?JPの*方匪分」
第5図 マルケノ(人ヒDSPM及ドDSP湘亙間乃イングフェ
ース尭7図 DMAコントローラの入出カイ芭号 浦8図 DMAコントローラのAモード時の状態、遷木多M9図 ■@■O■O@ ■[相] ■■■(2)O■■ − 京AOF=1 or *ACT=O or * DBCT = l DMAコンドローラリIモード吟の伏胱l神M11図 ■■@■[有]■[相] [相]
Claims (2)
- (1)アームの先端にハンドが取り付けられると共にハ
ンドに作用する力を検出する力センサーを持つ多関節ロ
ボットまたは、自動機を制御するディジタル制御装置で
あって、 内部にメモリを有すると共にDMA機能を持つ第1のマ
イクロプロセッサ(11)と、 内部にメモリを有すると共にDMA機能を持つ第2のマ
イクロプロセッサ(12)と、 第1のマイクロプロセッサ(11)にローカル・バス(
17)を介して接続された外部メモリ(13)および入
出力装置(15)と、 第2のマイクロプロセッサ(12)にローカル・バス(
18)を介して接続された外部メモリ(14)および入
出力装置(16)と、 DMAシーケンス制御部(22)と、 DMAシーケンス制御部(22)と第1のマイクロプロ
セッサ(11)とを接続するバス(19)と、DMAシ
ーケンス制御部(22)と第2のマイクロプロセッサ(
12)とを接続するバス(20)と、第1のマイクロプ
ロセッサ(11)および第2のマイクロプロセッサ(1
2)に対してサンプリング・クロックSCKを供給する
同期クロック源(21)と、ホスト計算機(24)と、 ホスト計算機(24)のバスとマイクロプロセッサ側の
DMAインタフェースとを接続するホスト・インタフェ
ース制御部(23)と、 を具備し、且つ DMAシーケン制御部(22)は、第1のマイロクプロ
セッサ(11)と第2のマイクロプロセッサ(12)間
のDMA転送、ホスト計算機(24)と第1のマイクロ
プロセッサ(11)間のDMA転送、ホスト計算機(2
4)と第2のマイクロプロセッサ(12)間のDMA転
送のタイミングが重なった場合に、競合を回避する機能
を持ち、 第1のマイクロプロセッサ(11)は、 [1]サンプリング・クロックSCKのトリガ発生をチ
ェックし、サンプリング・タイミングならば、[2]の
処理に進む。 [2]DMA転送により1ステップ前の関節指示速度v
を入力する。 [3]関節角θを入力する。 [4]e=r−θに応じてサーボ演算を実行し、モータ
駆動力uを更新する。 [5][2]で入力した1ステップ前の関節指示速度v
に応じて目標位置rを計算する。[6][3]で入力し
た関節角θを次のサンプリング時の座標変換のためにマ
イクロプロセッサ(12)に送る。 [7]ホスト計算機からのコマンドを解析する。 [8]必要に応じて各コマンドを実行する。 等の処理を行うように構成され、 第2のマイクロプロセッサ(12)は、 [1]サンプリング・クロックSCKのトリガ発生をチ
ェックし、サンプリング・タイミングならば、[2]の
処理に進む。 [2]力センサー信号F^Hを入力する。 [3]力センサー信号F^Hを1ステップ前の姿勢θを
もとに基準座標系の値F^Rに変換する。 [4]F^Rをホスト計算機から設定したF_i^Rと
比較し、F_■^R=F_i^R−F^Rに応じて適当
な補償演算を行い、この結果を指示速度v^Rとする。 [5]指示速度v^Rを関節速度vに変換し、次のサン
プリング時にマイクロプロセッサ(11)側に渡す。 [6]ホスト計算機からのコマンドを解析する。 [7]必要に応じて各コマンドを実行する。 等の処理を行うように構成されている ことを特徴とするディジタル制御装置、 ただし、F_i^Rは基準座標系での力の設定値、F^
Rは基準座標系での力の現在値、F_■^Rは基準座標
系での力の偏差、F^Hはハンド座標系での力の観測値
、v^Rは基準座標系での指示速度、vは関節座標系で
の指示速度、rは関節座標系での目標位置、θは関節座
標系での現在位置、eは関節座標系での偏差、uは操作
量をそれぞれ示す。 - (2)第1のマイクロプロセッサ(11)および第2の
マイクロプロセッサ(12)は、それぞれホスト計算機
(24)から送られてくるデータを格納するホスト・イ
ンタフェース・バッファを有することを特徴とする請求
項(1)記載のディジタル制御装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP22944188A JPH0276010A (ja) | 1988-09-13 | 1988-09-13 | ディジタル制御装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP22944188A JPH0276010A (ja) | 1988-09-13 | 1988-09-13 | ディジタル制御装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0276010A true JPH0276010A (ja) | 1990-03-15 |
Family
ID=16892266
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP22944188A Pending JPH0276010A (ja) | 1988-09-13 | 1988-09-13 | ディジタル制御装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0276010A (ja) |
-
1988
- 1988-09-13 JP JP22944188A patent/JPH0276010A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5254923A (en) | Industrial robot synchronous control method and apparatus | |
| JP2895672B2 (ja) | 複数ロボット制御方法 | |
| US8744625B2 (en) | Robot controlling device | |
| US5157315A (en) | Method of controlling robot movements | |
| JPS6334609A (ja) | 複腕装置 | |
| JPS62194513A (ja) | ロボツトの円弧補間姿勢制御装置 | |
| JP2629291B2 (ja) | マニピュレータ学習制御方法 | |
| JPH0276010A (ja) | ディジタル制御装置 | |
| JP2703767B2 (ja) | ロボットの教示データ作成方法 | |
| JPH05177563A (ja) | マスタスレーブマニピュレータの制御方法 | |
| JPH03190687A (ja) | ロボットの倣い速度制御方式 | |
| JP2649463B2 (ja) | 回転外部軸を有する産業用ロボットの教示方法およびそれに用いる教示装置 | |
| JP3402378B2 (ja) | 7軸マニピュレータの制御方法 | |
| JPH0275002A (ja) | ディジタル制御装置 | |
| JPH08141951A (ja) | ロボットの協調制御方法および協調制御装置 | |
| JP2022102023A (ja) | ロボットシステム | |
| JPS63239511A (ja) | ロボツト・システム | |
| JPH0492905A (ja) | ロボットの教示装置 | |
| JP2000084878A (ja) | ロボットの制御装置 | |
| JPH05253864A (ja) | マスタスレーブマニピュレータ | |
| JPH0349885A (ja) | 力制御ロボットの倣い制御方式 | |
| JPS62114892A (ja) | ロボツトの力センサドリフト補償方法 | |
| JPH02121007A (ja) | ロボットの教示用制御方式 | |
| JP2759278B2 (ja) | ロボットのティーチングデータ作成装置 | |
| JP2832903B2 (ja) | 倣い制御の座標切替方式 |