JPH0699372A - ロボット制御装置 - Google Patents

ロボット制御装置

Info

Publication number
JPH0699372A
JPH0699372A JP27667992A JP27667992A JPH0699372A JP H0699372 A JPH0699372 A JP H0699372A JP 27667992 A JP27667992 A JP 27667992A JP 27667992 A JP27667992 A JP 27667992A JP H0699372 A JPH0699372 A JP H0699372A
Authority
JP
Japan
Prior art keywords
robot
target position
matrix
joint angle
position matrix
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
Application number
JP27667992A
Other languages
English (en)
Inventor
Katsuhiro Komuro
克弘 小室
Takao Yoneda
孝夫 米田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyoda Koki KK
Original Assignee
Toyoda Koki KK
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toyoda Koki KK filed Critical Toyoda Koki KK
Priority to JP27667992A priority Critical patent/JPH0699372A/ja
Priority to EP93115114A priority patent/EP0589394A1/en
Priority to US08/123,997 priority patent/US5555347A/en
Publication of JPH0699372A publication Critical patent/JPH0699372A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 従来考慮できなかった誤差要因にも対応し得
る、補正精度の高いロボット制御装置を提供する。 【構成】 位置マトリクス演算手段601がロボットの
目標位置マトリクスMmを求め、この目標位置マトリク
スMmを基に、第1座標逆変換fa演算部によりロボッ
トの各関節の関節角ベクトルΘaを求める。次に、この
関節角ベクトルΘaをニューラルネットワーク409に
入力し、この関節角ベクトル算出の基とした上記目標位
置マトリクスMmを補正する補正量(補正マトリクスΔ
Mm)を求め、目標位置補正部619が、この補正マト
リクスΔMmにより前記目標位置マトリクスMmを補正
し、この補正された目標位置マトリクスMm’から、第
2座標逆変換fa演算部621がロボットの各関節の関
節角ベクトルΘa’を求める。そして、この求められた
関節角ベクトルΘa’を基に位置制御部623によりロ
ボット10を制御する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、ロボット制御装置に関
し、特に、ニューラルネットワークを用いてロボットア
ームの位置補正を行うロボット制御装置に関する。
【0002】
【従来の技術】産業用ロボットにおける絶対位置決め誤
差は、機械加工誤差、組付け誤差、熱歪等によるロボッ
トアームの寸法の誤差と、自重等による各関節のたわみ
等が原因となっている。従来の産業用ロボットの制御
は、ロボットアームの先端の目標とする位置マトリクス
Mmを求め、この目標位置マトリクスMmを、誤差を考
慮した逆変換関数faにより逆変換してロボットの各関
節の制御目標となる関節角ベクトルΘaを求め、各関節
を、この関節角ベクトルΘaを基に動作させロボットを
制御していた。
【0003】
【発明が解決しようとする課題】上述のように、従来、
目標位置マトリクスMmを誤差を考慮して逆変換を行い
制御目標となる関節角ベクトルΘaを求めているが、全
ての誤差要因を考慮してロボットの座標変換を行おうと
すると座標変換が複雑になり、また、ロボットアームの
先端の位置・姿勢から各関節角を求める所謂逆変換は、
数値解析法を用いており、演算量が多くなり解を求める
ことが困難である。このために、従来のロボット制御装
置は、考慮する誤差要因を限定して補正を行っていた。
これについて、更に式により説明する。 ここで、Mm:目標とする位置マトリクス fa:誤差を限定して考慮した逆変換関数 Θa:制御目標となる関節角ベクトル gt:すべての誤差が反映される実際の順変換関数 Ma:Θaを基に制御されたロボットアーム先端の位置
マトリクス ΔMε=Ma−Mm ここで、ΔMε:絶対位置決め誤差
【0004】式1に示すように、目標とする位置マトリ
クスMmに対し、誤差要因を限定して考慮した逆変換関
数faにより関節角ベクトルΘaを求め、そして、この
関節角ベクトルΘaを基にロボットを制御すると、ロボ
ットアームの先端の位置マトリクスMaは、関節角ベク
トルΘaを全ての誤差が反映される実際の順変換関数g
tにより順変換したものとして表すことができる。しか
し、実際の順変換関数gtには制御の際に考慮できなか
った誤差要因が含まれるため、制御されたロボットアー
ムの位置マトリクスMaは、目標位置マトリクスMmと
一致せず、考慮されなかった誤差分に起因する絶対位置
決め誤差ΔMεだけの誤差が生じている。
【0005】本発明は、上記課題を解決するために成さ
れたもので、その目的とするところは、従来考慮できな
かった誤差要因を補正し得る補正精度の高いロボット制
御装置を提供することにある。
【0006】
【課題を解決するための手段】上記課題を解決するため
の発明の構成は、ロボットの目標位置の位置マトリクス
を求める目標位置マトリクス演算手段と、前記目標位置
マトリクス演算手段により求められた目標位置マトリク
スを基に、ロボットの各関節の関節角ベクトルを求める
第1関節角ベクトル演算手段と、前記関節角ベクトルを
入力として与えると該関節角ベクトル算出の基とした目
標位置マトリクスの補正量を出力するニューラルネット
ワークと、前記目標位置マトリクス演算手段により求め
られた前記目標位置マトリクスを、前記補正量により補
正する補正手段と、前記補正手段により補正された目標
位置マトリクスから、ロボットの各関節の関節角ベクト
ルを求める第2関節角ベクトル演算手段と、前記第2関
節角ベクトル演算手段により求められた関節角ベクトル
を基にロボットを制御する制御手段とからなることを特
徴とする。
【0007】
【作用】上記の手段によれば、目標位置マトリクス演算
手段がロボットの目標位置マトリクスを求め、この目標
位置マトリクスを基に、第1関節角ベクトル演算手段が
ロボットの各関節の関節角ベクトルを求める。次に、ニ
ューラルネットワークを用いて前記関節角ベクトルを算
出する基となった上記目標位置マトリクスの補正量を求
め、補正手段がこの補正量分、目標位置マトリクス演算
手段により求められた前記目標位置マトリクスを補正
し、この補正された目標位置マトリクスから、第2関節
角ベクトル演算手段がロボットの各関節の関節角ベクト
ルを求める。そして、この求められた関節角ベクトルを
基に制御手段によりロボットを制御する。
【0008】
【実施例】以下に、本実施例に係るロボット制御装置を
図を参照して説明する。先ず、本実施例のロボット制御
装置により制御される6関節を有するロボット10につ
いて、図1を参照して説明する。ロボット10は、ベー
ス13に固定された脚柱12に取り付けられた、コラム
14と、第1アーム15と、第2アーム16と、第3ア
ーム17と、フインガ19とから構成され、第1関節
a、第2関節b、第3関節c、第4関節d、第5関節
e、第6関節fにより、6自由度で自在にフインガ19
の位置及び姿勢を制御できるよう構成されている。
【0009】次に、ロボット10を制御する本実施例の
ロボット制御装置の構成を図2を参照して説明する。ロ
ボット10の位置の演算及び制御を行うCPU11に
は、制御指令を入力するオペレーティングボックス27
及び操作盤26と、制御情報を記憶する外部記憶装置2
9と、後で詳述するROM20と、RAM30とが接続
されている。更に、CPU11には、第1関節aを制御
する1軸サーボ制御部40a乃至第6関節を制御する6
軸サーボ制御部40fが接続され、該CPU11は、前
述の操作盤26等の周辺装置からの入力に応じて、該1
軸サーボ制御部40a乃至6軸サーボ制御部40fに制
御指令を発する。これに応じて各サーボ制御部(40a
〜40f)は、サーボモータM1乃至M6を回動させ、
第1関節a乃至第6関節fを動かすことによりロボット
10を駆動する。各サーボモータM1乃至M6の動き
は、エンコーダE1乃至E6により各々のサーボ制御部
に帰還される。
【0010】次に、本実施例の補正の考え方を、ロボッ
ト制御装置による制御の説明に先立ち説明する。従来の
産業用ロボットの制御は、従来技術の項で前述したよう
に、ロボットアームの先端の目標とする位置マトリクス
Mmを求め、この目標位置マトリクスMmを、誤差を考
慮した逆変換関数faにより、逆変換してロボットの各
関節の制御目標となる関節角ベクトルΘaを求め、これ
を基にロボットを制御していた。関節角ベクトルΘaを
基に制御されたロボットアーム先端の位置マトリクスM
aは、すべての誤差が反映される実際の順変換関数gt
により関節角ベクトルΘaを順変換することにより求め
られる。 ここで、Mm:目標とする位置マトリクス fa:誤差を限定して考慮した逆変換関数 Θa:制御目標となる関節角ベクトル gt:すべての誤差が反映される実際の順変換関数 Ma:Θaを基に制御されたロボットアーム先端の位置
マトリクス
【0011】ここでは、誤差要因を限定して考慮した逆
変換関数faにより求めた関節角ベクトルΘaを基に、
ロボットを制御しているが、実際に制御されたロボット
の位置マトリクスMaには、考慮できなかった誤差分が
含まれるため、この誤差分がロボット制御装置の制御誤
差となった。即ち、実際の位置マトリクスMaを規定す
る順変換関数gtには考慮できなかった誤差分が含ま
れ、逆変換関数faによる逆変換と順変換関数gtによ
る順変換とにより生ずる差が誤差となり、これが制御さ
れたロボットアームの位置マトリクスMaと、目標位置
マトリクスMmとの位置誤差になっていた。
【0012】これに対して本実施例では、式1に示す制
御されたロボットアームの位置マトリクスMaが、目標
とする位置マトリクスMmに等しくなるように、目標位
置マトリクスMmを誤差量(必要な補正量)である補正
マトリクスΔMmで補正し、この補正された目標位置マ
トリクスMm' に基づきロボット10を制御する。この
補正の考え方について以下更に詳細に説明する。
【0013】先ず、逆変換関数faによる逆変換と順変
換関数gtによる順変換とにより生じる誤差量が必要な
補正量に相当すると考え、逆変換関数faによる逆変換
と順変換関数gtによる順変換とを補正マトリクスΔM
mと置くと、式1は次式で表すことができる。 Mm・ΔMm=Ma 式2 そして、式2から誤差量(補正マトリクス)ΔMmは次
式で表される。 ΔMm=Mm-1・Ma 式3 ここで、誤差量(補正マトリクス)ΔMmの逆行列ΔM
-1を必要な補正量と考え、目標位置マトリクスMmに
この補正量ΔMm-1を掛けたもの(Mm・ΔMm-1)を
補正された目標位置マトリクスMm' と置き、これを式
1に代入すると次式を求めることができる。 ここで、Mm' :目標位置マトリクスMmに補正量ΔM
-1を掛け補正した目標位置マトリクス Θa' :補正された目標位置マトリクスMm' に基づく
制御目標となる関節角ベクトル Ma' :関節角ベクトルΘa' を基に制御されたロボッ
トアーム先端の位置マトリクス
【0014】上述したように、逆変換関数faによる逆
変換と順変換関数gtによる順変換とを誤差量(補正マ
トリクス)ΔMmとし、Mm' =Mm・ΔMm-1である
ので、式4は次式と近似していると考えることができ
る。 Mm・ΔMm-1・ΔMm≒Ma' 式5 従って、次式が成立する。 Mm ≒ Ma' 式6 式6に示すように、目標位置マトリクスMmに補正量Δ
Mm-1を掛け、補正した目標位置マトリクスMm' を基
に制御目標となる関節角ベクトルΘa' を求め、Θa'
を基に制御したロボットアーム先端の位置マトリクスM
a' は、目標位置マトリクスMmに略等しい。本実施例
はかかる考え方に基づきロボット制御装置の位置補正を
行う。
【0015】次に、上記の補正理論に基づく、本実施例
に係るロボット制御装置のニューラルネットワークへの
学習を、CPU11の演算処理の概要をブロック図にし
た図4と、この処理の流れをフローチャートにした図3
とを参照して説明する。先ず、目標位置マトリクスMm
演算部401で、ロボット10を動かす目標位置の位置
マトリクスMmを演算する。そして、座標逆変換fa演
算部403で、逆変換関数faにより、誤差要因として
荷重及び温度を考慮し、目標位置マトリクスMmに対応
するロボットの各関節の関節角ベクトルΘaを演算する
(ステップ301)。
【0016】次に、座標逆変換fa演算部403で求め
られたロボットの各関節の関節角ベクトルΘaを、関節
角ベクトルΘa保持部405に保持すると共に、この時
のロボット制御の誤差要因となる荷重、温度等を誤差要
因項目保持部407に保持する。そして、この関節角ベ
クトルΘaを基に、ロボット制御部411でロボット1
0を動作させる。この動作後に、位置マトリクスMa測
定部413でロボットアームの実際の先端位置マトリク
スMaを測定する。そして、補正マトリクスΔMm演算
部415で、目標位置マトリクスMmの逆行列を求める
と共に、この逆行列と該先端位置マトリクスMaとから
前述した式3(ΔMm=Mm-1・Ma)を用いて、補正
マトリクスΔMmを求める。そして、求められた補正マ
トリクスΔMmを補正マトリクスΔMm保持部417へ
保持させる。(ステップ302)。
【0017】このステップ301及びステップ302に
よる補正データの蓄積を複数の位置について行う。そし
て、蓄積された関節角ベクトルΘaと、誤差要因項目と
を入力データとし、補正マトリクスΔMmを教師データ
とする学習をニューラルネットワーク409に行わせ、
ニューラルネットワーク409に関節角ベクトルΘaに
対する補正マトリクスΔMmの関係を学ばせる(ステッ
プ303)。このステップ303のニューラルネットワ
ーク409の学習については、後で更に詳細に説明す
る。
【0018】次に、本実施例に係るロボット制御装置
の、上記の学習が完了したニューラルネットワーク40
9を用いる制御を、CPU11による演算の概要を示す
図6のブロック図と、この時の処理の流れを示す図5の
フローチャートとを参照して説明する。先ず、目標位置
マトリクスMm演算部601で、ロボット10を動かす
目標位置の位置マトリクスMmを演算する。そして、第
1座標逆変換fa演算部603で、誤差要因として荷重
及び温度を考慮し、逆変換関数faを用いてロボット1
0の各関節の関節角ベクトルΘaを求める(ステップ5
01)。
【0019】次に、座標逆変換fa演算部603で求め
られたロボット10の各関節の関節角ベクトルΘaを、
関節角ベクトルΘa保持部605に保持すると共に、こ
の時のロボット制御の誤差要因となる荷重、温度等を誤
差要因項目保持部607へ保持させる。そして、この関
節角ベクトルΘaと誤差要因項目とをニューラルネット
ワーク409へ入力して、該関節角ベクトルΘa及びこ
の時の誤差要因に対する補正マトリクスΔMmを取得
し、これを補正マトリクスΔMm保持部617に保持さ
せる(ステップ502)。そして、目標位置補正部61
9で、補正マトリクスΔMm保持部617に保持された
補正マトリクスΔMmの逆行列ΔMm-1を求め、これを
目標位置マトリクス演算部601で求められた目標位置
マトリクスMmに掛けることにより、補正された目標位
置マトリクスMm’(Mm’=Mm・ΔMm-1)を求め
る(ステップ503)。最後に、第2座標逆変換fa演
算部621で、補正された目標位置マトリクスMm’を
基に、誤差要因として荷重及び温度を考慮し、逆変換関
数faを用いてロボット10の第1関節a乃至第6関節
fの関節角ベクトルΘa’を求める。そして、位置制御
部623が、求められた関節角ベクトルΘa’を基に、
前述した1軸サーボ制御部40a乃至6軸サーボ制御部
40fに指令を発し、これに応じて1軸サーボ制御部4
0a乃至6軸サーボ制御部40fがサーボモータM1乃
至M6を駆動することにより第1関節a乃至第6関節f
が動かされ、ロボット10の位置及び姿勢の制御が行わ
れる(ステップ504)。
【0020】本実施例では、ニューラルネットワーク4
09に学習させる際に、目標位置マトリクスMmから関
節角ベクトルΘaを求め、この関節角ベクトルΘaをニ
ューラルネットワーク409に与え、関節角ベクトルΘ
a算出の基礎とした目標位置マトリクスMmに対する補
正量(補正マトリクスΔMm)を得るようにしたため、
目標位置マトリクスから直接補正マトリクスを得るよう
にした構成と比較して学習が簡単である利点がある。更
に、この実施例では、関節角ベクトルΘaをニューラル
ネットワークに与え補正マトリクスΔMmを得るように
したため誤差要因を減らすことが可能となった。これ
は、目標位置マトリクスMmに対する関節角ベクトルΘ
aは複数存在するため、目標位置マトリクスを直接ニュ
ーラルネットワークに与えると、複数存在する関節角ベ
クトルΘaが誤差要因となるのに対して、本実施例では
関節角ベクトルΘaをニューラルネットワークに与えて
おり、この関節角ベクトルΘaによる決まるロボットの
先端位置は1つだからである。
【0021】次に、前述した本実施例に係るロボット制
御装置のニューラルネットワーク409の学習及びこれ
による演算について更に詳細に説明する。 1.ニューラルネットワークの構成、 本実施例のニューラルネットワークは、図2に示すCP
U11、ROM20、RAM30から成るコンピュータ
システムで構成されている。ROM20には入力データ
と教師データの蓄積を管理する制御プログラムの記憶さ
れた制御プログラム領域21と、ニューラルネットワー
クの演算プログラムの記憶されたニューラルネットワー
ク領域22と、ニューラルネットワークに学習させるた
めのプログラムの記憶された学習プログラム領域23と
が形成されている。また、RAM30には、図4に関連
して前述した関節角ベクトルΘa保持部405に蓄積さ
れた関節角ベクトルΘaと、誤差要因項目保持部407
に蓄積された温度、荷重等の誤差項目を入力データとし
て記憶する入力データ記憶領域31と、同様に補正マト
リクスΔMm保持部417に蓄積された補正マトリクス
ΔMmを教師データとして記憶する教師データ記憶領域
32と、ニューラルネットワークの結合係数を記憶する
結合係数記憶領域33とが形成されている。
【0022】2.ニューラルネットワーク 本実施例のニューラルネットワーク409は、図7に示
すように、入力層LIと出力層L0と中間層LMの3層
構造に構成されている。入力層LIはe個の入力素子を
有し、出力層L0はg個の出力素子を有し、中間層LM
はh個の出力素子を有している。
【0023】多層構造のニューラルネットワークは、一
般的に、次の演算を行う装置として定義される。第i層
の第j番目の素子の出力Oi j は、次式で演算される。
但し、i≧2である。
【0024】但し、Vi j は第i層の第j番目の演算素
子のバイアス、Wi-1 k, i j は、第i−1層の第k番目
の素子と第i層の第j番目の素子各の結合係数、O1 j
は第1層の第j番目の素子の出力値を表す。即ち、第1
層であるから演算を行うことなく、そのまま入力を出力
するので、入力層(第1層)の第j番目の素子の入力値
でもある。
【0025】次に、図7に示す3層構造のニューラルネ
ットワーク409の具体的な演算手順について、図8を
参照して説明する。各層の演算は、RAM30の結合係
数記憶領域33に記憶されている結合係数を参照しつ
つ、ROM20のニューラルネットワーク領域22に記
憶されたプログラムを実行することによって行われる。
ステップ100において、中間層(第2層)の第j番目
の素子は、入力層(第1層)の各素子からの出力値O1
j (第1層の入力データ)を入力して、式8を層番号と
第1層の素子数を用いて具体化した次式の積和演算を行
う。
【0026】次に、ステップ102において、次式によ
り、式10の入力値の積和関数値のシグモンド関数によ
り、中間層(第2層)の各素子の出力が演算される。第
2層の第j番目の素子の出力値は次式で演算される。 O2 j =f(I2 j )=1/{1+exp( −I2 j ) } 式11 この出力値O2 j は出力層(第3層)の各素子の入力値
となる。
【0027】次に、このステップ104において、出力
層(第3層)の各素子の入力値の積和演算が実行され
る。 次に、ステップ106において、式11と同様にシグモ
ンド関数により、出力層の各素子の出力値O3 j が演算
される。 O3 j =f(I3 j )=1/{1+exp( −I3 j ) } 式13
【0028】3.入力データと教師データの構造 ニューラルネットワークの更新学習に使用されるデータ
は、図10に示すようなデータベースに構成されてい
る。入力データは、D1 ・・・Dn であり、対応する
教師データは、E1 ・・・En である。このn個の入力
データは、図3及び図4に関して前述したステップ30
1、302及び303で取得し、関節角ベクトルΘa保
持部405に保持された関節角ベクトルΘa及び誤差要
因項目保持部407に保持した誤差要因となる温度、荷
重等であり、そして、このn個の教師データは補正マト
リクスΔMm保持部417に保持された補正マトリクス
ΔMmである。そしてこれらのデータは、それぞれ、R
AM30の入力データ記憶領域31及び教師データ記憶
領域32に記憶されている。
【0029】この入力データは次のように定義される。
e個の入力素子のそれぞれに与えられるe個のデータを
1組のデータとして考える。そして、任意の第m番目の
1組の入力データをDm で表し、その組に属する第j番
目の入力素子に対する入力データをdmjで表す。Dm
ベクトルを表し、dmjはそのベクトルの成分である。即
ち、Dm は次式で定義される。 Dm =(dm1,dm2,・・・・dme-1,dme) 式14 又、n組の入力データはD1 ,D2 ,・・・Dn-1 ,D
n で表される。以下、全n組の入力データ群は、入力デ
ータ群Dと表記される。尚、入力データDm に対して式
10を用いる場合には、式10のO1 k に、成分dmk
代入される。
【0030】同様に、E1 ,・・・En は、次のように
定義される。出力層LOに関して、g個の出力素子のそ
れぞれからの出力に対する教師データを1組のデータと
して考える。そして、任意の第m番目の1組の教師デー
タをEm で表し、その組に属する第j番目の出力素子に
対する教師データをemjで表す。Em はベクトルを表
し、emjはそのベクトルの成分である。即ちEm は次式
で定義される。 Em =(em1,em2,・・・・emg-1,emg) 式15 また、n組の教師データはE1 ,E2 ,・・・・
n-1 ,En で表される。以下全n組の教師データ群
は、教師データ群Eと表記される。
【0031】4.ニューラルネットワークの学習 このニューラルネットワークは、初期学習として、RO
M20の学習プログラム領域23に記憶された図9に示
す手順のプログラムが実行されることにより学習され
る。結合係数の学習は良く知られたバックプロパーゲー
ション法により実行される。
【0032】この学習は、各種の事象に関する多数の入
力データに対して、それぞれの出力が、それぞれの最適
な教師データとなるように、繰り返し実行される。これ
らの入力データ及び教師データは、前述したようにそれ
ぞれ、入力データ記憶領域31及び教師データ記憶領域
32に記憶されている。
【0033】図9のステップ200において、データ番
号iが初期値1に設定され、出力素子の番号j(教師デ
ータの成分番号j)が初期値の1に設定される。次にス
テップ202へ移行して、第i番目の入力データDiと
第i番目の教師データEiが入力データ記憶領域31と
教師データ記憶領域32とから抽出される。
【0034】次にステップ206へ移行して、次式によ
り出力層の読みだされた第i番目の教師データEiの第
j成分eijに対応した素子の学習信号が演算される。 Y3 j =(eij−O3 j ) ・f' (I3 j ) 式16 但し、Y3 j 、O3 j 、I3 j では、データ番号iは省
略されている。f'(X)はシグモンド関数の導関数であ
る。又、I3 j は、入力データDi の各成分を式10の
1 k 代入して、中間層のの全ての素子に関しI2 k
求め、I2 k を式11に代入して中間層の全ての素子に
関して出力O2 k を求め、その全てのkに関してO2 k
を式12に代入して求められる。又、O3 j は、I3 j
を式13に代入して求められる。
【0035】次に、ステップ210において、全出力素
子について、学習信号が演算されたか否かが判定され、
判定結果がNOの場合には、ステップ212において、
素子番号jが1だけ加算され、ステップ206へ戻り、
次の出力素子に関する学習信号が演算される。ステップ
210で全出力素子に関する学習信号の演算が完了した
と判定されると、ステップ214において、中間層の任
意の第r番目の素子に関する学習信号Yが次式で演算さ
れる。 このような学習演算が、中間層の全素子に関して実行さ
れる。
【0036】次に、ステップ216において、出力層の
各結合係数が補正される。補正量は次式で求められる。 Δω2 i, 3 j (t)=P・Y3 j ・f(I2 i )+ Q・Δω2 i, 3 j (t−1) 式18 但し、Δω2 i, 3 j (t)は、出力層の第j番目の素子
と中間層の第i番目の素子との間の結合係数の第t回目
演算の変化量である。又、Δω2 i, 3 j (t−1)は、
その結合係数の前回の補正量である。P、Qは比例定数
である。よって結合係数は、 W2 i, 3 j +Δω2 i, 3 j (t)→ W2 i, 3 j 式19 により、補正された結合係数が求められる。
【0037】次に、ステップ218へ移行して、中間層
の各素子の各結合係数が補正される。その結合係数の補
正量は出力層の場合と同様に、次式で求められる。 Δω1 i, 2 j (t)=P・Y2 j ・f(I1 i )+ Q・Δω1 i, 2 j (t−1) 式20 よって結合係数は、 W1 i, 2 j +Δω1 i, 2 j (t)→ W1 i, 2 j 式21 により、補正された結合係数が求められる。
【0038】次に、ステップ220において、学習対象
のn個の入力データ及び教師データに対して1回の学習
が完了したか否かが判定される。全ての入力データに対
する学習が終了していない場合には、ステップ222へ
移行して、次の入力データとその入力データに対応する
教師データを入力データ記憶領域31と教師データ記憶
領域32から読み込むためにデータ番号iが1だけ加算
され、成分番号jは初期値の1に設定される。そして、
ステップ202へ戻り、次の入力データ及び教師データ
を用いて上記した学習が実行される。
【0039】ステップ220でn個全部の入力データ及
び教師データに関して学習が完了したと判定されると、
ステップ224に移行して、出力データと教師データの
差の自乗の値が所定の値以下になったか否かの判定によ
り、結合係数が収束したか否かが判定される。結合係数
が収束していなければ、ステップ200に戻り、第2回
目の学習を行うために、第1番目の入力データ及び教師
データから上述した学習が実行される。
【0040】このようにして、ステップ224におい
て、出力データと教師データの差の自乗の値が所定の値
以下となり、学習が収束するまで、上記の学習演算が繰
り返し実行される。この結果、初期の広範囲の事象に関
して初期学習されたニューラルネットワークが完成され
る。この学習の結果、本実施例のニューラルネットワー
ク409は、図6に示すように、関節角ベクトルΘaを
入力することにより必要な補正マトリクスΔMmを演算
することが可能となる。
【0041】なお、以上説明した実施例においては、ロ
ボット先端の位置及び姿勢を補正する例について説明し
たが、本発明は、姿勢を問題としないロボットの制御を
行う際には、ポジションベクトル(x,y,z)のみを
ニューラルネットワークに学習させて補正を行うように
もできる。かかる方式は全体の構成を簡略化できる利点
がある。また、本実施例では、逆変換関数faで逆変換
を行う際に誤差要因として温度及び荷重を考慮したが、
本発明では、逆変換関数faで前もって考慮する誤差要
因はこれらに限定されず、更には全く誤差要因を考慮し
なくても、ニューラルネットワークにより誤差を補正す
ることが可能である。
【0042】更に、本実施例では、入力層LI、中間層
LM、出力層LOからなる3層構造のニューラルネット
ワークを例に取ったが、本発明のニューラルネットワー
クはかかる構成に限定されず、必要な学習を行い得るい
かなる構成のニューラルネットワークでも本発明の所期
の目的を達成できる。また、本実施例の補正の考え方を
説明する際に、説明の便宜のために数式を挙げて説明し
たが、本発明はこれら数式に限定されるものではない。
【0043】
【発明の効果】本発明は、以上説明したように構成され
ており、従来考慮できなかった誤差要因をニューラルネ
ットワークにより学習させ補正を行うため、補正精度を
向上させることができる。また本発明は、ニューラルネ
ットワークに学習させる際に、目標位置マトリクスから
関節角ベクトルを求め、この関節角ベクトルをニューラ
ルネットワークに与え、関節角ベクトルに対応する補正
マトリクスを得るようにしたため、目標位置マトリクス
から直接補正マトリクスを得るようにした構成と比較し
て学習が簡単である利点がある。更に、本発明では、関
節角ベクトルに対する補正マトリクスを得るようにした
ため誤差要因を減らすことが可能となる。これは、目標
位置マトリクスに対する関節角ベクトルは複数存在する
が、関節角ベクトルにより決まるロボットの先端位置は
一つだからである。
【図面の簡単な説明】
【図1】本発明の一実施例に係るロボットの機械的構成
を示す構成図。
【図2】図1に示すロボットを制御する本実施例に係る
ロボット制御装置の構成を示したブロック図。
【図3】本実施例に係るロボット制御装置の学習時の処
理を説明するフローチャート。
【図4】本実施例に係るロボット制御装置の学習時の処
理を説明するブロック図。
【図5】本実施例に係るロボット制御装置の学習後にお
ける制御の処理を説明するフローチャート。
【図6】本実施例に係るロボット制御装置の学習後にお
ける制御の処理を説明するブロック図。
【図7】本実施例に係るロボット制御装置のニューラル
ネットワークの構成を示した構成図。
【図8】図7に示す実施例に係るニューラルネットワー
クの演算手順を示したフローチャート。
【図9】図7に示す実施例に係るニューラルネットワー
クの学習手順を示したフローチャート。
【図10】ニューラルネットワークの学習に用いられる
入力データと教師データを有するデータベースのデータ
構成を示した構成図。
【符号の説明】
10 ロボット 11 CPU 20 ROM 30 RAM 409 ニューラルネットワーク 601 目標位置マトリクスMm演算部 603 第1座標逆変換fa演算部 605 関節角ベクトルΘa保持部 607 誤差要因項目保持部 617 補正マトリクスΔMm保持部 619 目標位置補正部 621 第2座標逆変換fa演算部 623 位置制御部 LI 入力層 LM 中間層 LO 出力層

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 ロボットの目標位置の位置マトリクスを
    求める目標位置マトリクス演算手段と、 前記目標位置マトリクス演算手段により求められた目標
    位置マトリクスを基に、ロボットの各関節の関節角ベク
    トルを求める第1関節角ベクトル演算手段と、 前記関節角ベクトルを入力として与えると該関節角ベク
    トル算出の基とした目標位置マトリクスの補正量を出力
    するニューラルネットワークと、 前記目標位置マトリクス演算手段により求められた前記
    目標位置マトリクスを、前記補正量により補正する補正
    手段と、 前記補正手段により補正された目標位置マトリクスか
    ら、ロボットの各関節の関節角ベクトルを求める第2関
    節角ベクトル演算手段と、 前記第2関節角ベクトル演算手段により求められた関節
    角ベクトルを基にロボットを制御する制御手段とからな
    ることを特徴とするロボット制御装置。
JP27667992A 1992-09-21 1992-09-21 ロボット制御装置 Pending JPH0699372A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP27667992A JPH0699372A (ja) 1992-09-21 1992-09-21 ロボット制御装置
EP93115114A EP0589394A1 (en) 1992-09-21 1993-09-20 Method and apparatus for controlling a robot using a neural network
US08/123,997 US5555347A (en) 1992-09-21 1993-09-21 Method and apparatus for controlling a robot using a neural network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP27667992A JPH0699372A (ja) 1992-09-21 1992-09-21 ロボット制御装置

Publications (1)

Publication Number Publication Date
JPH0699372A true JPH0699372A (ja) 1994-04-12

Family

ID=17572813

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27667992A Pending JPH0699372A (ja) 1992-09-21 1992-09-21 ロボット制御装置

Country Status (1)

Country Link
JP (1) JPH0699372A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008068989A1 (ja) * 2006-12-07 2008-06-12 Ihi Corporation パラレルリンク式搬送装置とその制御方法
JP2016198828A (ja) * 2015-04-07 2016-12-01 キヤノン株式会社 ロボット制御方法、ロボット装置、プログラム及び記録媒体
JP2017514543A (ja) * 2014-03-17 2017-06-08 インテュイティブ サージカル オペレーションズ, インコーポレイテッド ツールの姿勢を維持するシステム及び方法
JP2020082304A (ja) * 2018-11-29 2020-06-04 三菱電機株式会社 びびり振動検知装置、びびり振動検知方法、びびり振動検知プログラム、及びびびり振動抑制装置
WO2021152697A1 (ja) * 2020-01-28 2021-08-05 株式会社Fuji 制御装置、制御方法、情報処理装置及び情報処理方法
CN116512254A (zh) * 2023-04-11 2023-08-01 中国人民解放军军事科学院国防科技创新研究院 基于方向的机械臂智能控制方法及系统、设备、存储介质

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008068989A1 (ja) * 2006-12-07 2008-06-12 Ihi Corporation パラレルリンク式搬送装置とその制御方法
JP2017514543A (ja) * 2014-03-17 2017-06-08 インテュイティブ サージカル オペレーションズ, インコーポレイテッド ツールの姿勢を維持するシステム及び方法
US10575910B2 (en) 2014-03-17 2020-03-03 Intuitive Surgical Operations, Inc. System and method for maintaining a tool position and orientation
US10610316B2 (en) 2014-03-17 2020-04-07 Intuitive Surgical Operations, Inc. System and method for aligning with a reference target
US11129684B2 (en) 2014-03-17 2021-09-28 Intuitive Surgical Operations, Inc. System and method for maintaining a tool position and orientation
US11707337B2 (en) 2014-03-17 2023-07-25 Intuitive Surgical Operations, Inc. System and method for maintaining a tool position and orientation
JP2016198828A (ja) * 2015-04-07 2016-12-01 キヤノン株式会社 ロボット制御方法、ロボット装置、プログラム及び記録媒体
JP2020082304A (ja) * 2018-11-29 2020-06-04 三菱電機株式会社 びびり振動検知装置、びびり振動検知方法、びびり振動検知プログラム、及びびびり振動抑制装置
WO2021152697A1 (ja) * 2020-01-28 2021-08-05 株式会社Fuji 制御装置、制御方法、情報処理装置及び情報処理方法
CN116512254A (zh) * 2023-04-11 2023-08-01 中国人民解放军军事科学院国防科技创新研究院 基于方向的机械臂智能控制方法及系统、设备、存储介质
CN116512254B (zh) * 2023-04-11 2024-01-23 中国人民解放军军事科学院国防科技创新研究院 基于方向的机械臂智能控制方法及系统、设备、存储介质

Similar Documents

Publication Publication Date Title
Wilson et al. Relative end-effector control using cartesian position based visual servoing
US5555347A (en) Method and apparatus for controlling a robot using a neural network
Wang et al. Robot manipulator calibration using neural network and a camera-based measurement system
US20190291271A1 (en) Controller and machine learning device
Sauvée et al. Image based visual servoing through nonlinear model predictive control
Wang et al. Nonparametric statistical learning control of robot manipulators for trajectory or contour tracking
Zhong et al. Inverse robot calibration using artificial neural networks
JP3349652B2 (ja) オフラインティーチング方法
Kouabon et al. A Learning Framework to inverse kinematics of high DOF redundant manipulators
Wang et al. A robot calibration method based on joint angle division and an artificial neural network
CN115648228B (zh) 工业机器人多源误差补偿方法、装置、设备及存储介质
Dallej et al. 3D pose visual servoing relieves parallel robot control from joint sensing
JPH03217906A (ja) 多関節形ロボットの制御方法
JPH0699372A (ja) ロボット制御装置
Ma et al. Robot error compensation based on incremental extreme learning machines and an improved sparrow search algorithm
JPH0699373A (ja) ロボット制御装置
JP2629291B2 (ja) マニピュレータ学習制御方法
JPS599708A (ja) ロボツトシステムの動作誤差補正方法
CN114888793B (zh) 一种多臂双光束激光焊接机器人双层协同控制方法
JPH06114769A (ja) オフラインティーチング装置
Bonnet et al. Self-generation of optimal exciting motions for identification of a humanoid robot
JPH06114768A (ja) ロボット制御装置
JP2718678B2 (ja) 座標系合わせ方法
Yu Parallel robots pose accuracy compensation using artificial neural networks
JPS59173805A (ja) 教示デ−タ変換機能を有する産業用ロボツト