JPH09237112A - 誤差補正機能を備えた工作機械 - Google Patents

誤差補正機能を備えた工作機械

Info

Publication number
JPH09237112A
JPH09237112A JP8071283A JP7128396A JPH09237112A JP H09237112 A JPH09237112 A JP H09237112A JP 8071283 A JP8071283 A JP 8071283A JP 7128396 A JP7128396 A JP 7128396A JP H09237112 A JPH09237112 A JP H09237112A
Authority
JP
Japan
Prior art keywords
error
tool
command value
value
base
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
JP8071283A
Other languages
English (en)
Inventor
Kazuya Hattori
和也 服部
Motoyuki Suzuki
基之 鈴木
Kazuki Watanabe
一樹 渡辺
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.)
Toyota Motor Corp
Toyoda Koki KK
Original Assignee
Toyota Motor Corp
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 Toyota Motor Corp, Toyoda Koki KK filed Critical Toyota Motor Corp
Priority to JP8071283A priority Critical patent/JPH09237112A/ja
Publication of JPH09237112A publication Critical patent/JPH09237112A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】工作機械の誤差マップデータを増加させずに加
工精度向上を図ること。 【解決手段】予め工具先端の可動範囲内に設けられた所
定の格子点毎に、位置及び姿勢の指令値と実測値との誤
差が対応した誤差マップを作成しておき、その誤差マッ
プを教師データとしてニューラルネットワークに学習さ
せておく。そして直交座標系で指定された加工指令値を
ニューラルネットワークに入力し (ステップ510)、ニュ
ーラルネットワークから誤差値を出力させ (ステップ52
0)、加工指令値から誤差値を減算することで補正指令値
を算出する (ステップ530)。この補正指令値をデジタル
サーボユニットの出力座標系に変換し (ステップ540)、
デジタルサーボユニットに出力し (ステップ550)、全て
の加工指令値に対して上記各処理を繰り返し実行する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、工具先端の位置及
び姿勢を制御するための工具ハンドへの指令値と、工具
先端の位置及び姿勢の実測値との誤差を補正する機構を
備えた工作機械に関する。
【0002】
【従来の技術】従来、パラレルリンク機構を用いた工作
機械では6自由度を有する工具ハンドを駆動させて工作
物を所定の形状に加工していた。特願平6−29359
1によれば、工具ハンドの6本のボールネジのそれぞれ
にスライドテーブルを螺合させ、サーボモータで個別に
ボールネジを駆動させることでスライドテーブルを移動
させ、スライドテーブルに連結された6本のアームを揺
動させて工具ユニットを6自由度に操作する構成として
いた。この工具ハンドでは、各サーボモータにエンコー
ダを取付けてフィードバック制御を行い、各サーボモー
タへの指令値とサーボモータの回転角の実測値との誤差
を補正する構成としている。しかし、この技術ではスラ
イドテーブルから先の誤差を補正することができないと
いう問題がある。この問題を解決するために、特願平7
─220114では工具ハンドの基台とトラベリングプ
レートとの間に測定リンクを設けて基台に対するトラベ
リングプレートの位置及び姿勢を検出し、この検出値か
ら工具ハンドへの指令値と実測値との間の位置及び姿勢
の誤差を測定し、この誤差に基づいて誤差マップを作成
し、工作物の加工に際して誤差マップに基づいて指令値
を補正する構成としている。
【0003】
【発明が解決しようとする課題】しかしながら、上記の
特願平7−220114では工作物の加工に先立って加
工プログラムによる空運転によって誤差マップを作成し
ているため、加工プログラム毎に誤差マップを作成しな
ければならず、生産性が悪く、また多数の誤差マップを
記憶或いは管理する必要が生じる。このため、トラベリ
ングプレートの可動範囲を格子状に分割し、各格子点に
工具ユニットの先端を移動させ、そのつど誤差を上記測
定リンクを用いて測定して、予め汎用的な誤差マップを
作成しておくことが考えられる。しかし、この場合、格
子点の間隔を狭くして格子点の数を多くすると精度は向
上するが、誤差マップの作成時間及び記憶容量が膨大と
なる。特に上記の工作機械は6自由度であり、位置のみ
ならず姿勢も制御できるため、同じ位置でも姿勢が異な
ると誤差も異なり、位置及び姿勢の両方を加味した誤差
マップを作成しようとすれば、その作成時間及び記憶容
量は非現実的なほど膨大となる。逆に格子点の間隔を広
くして格子点の数を少なくすることも考えられるが、格
子点と格子点の間では精度が悪くなる。特に上記の工作
機械は、6つのサーボモータがパラレルな構成となって
いるため、格子点から離れた位置における誤差をその近
傍の格子点における誤差から近似することは困難であ
る。
【0004】従って、本発明の目的は上記課題に鑑み、
サンプリングに要する作業時間や記憶容量が膨大となら
ない程度のサンプリング数であるにも係わらず、サンプ
リング点以外の位置においても正確な誤差を得ることが
でき、高精度加工が可能な工作機械を実現することであ
る。
【0005】
【課題を解決するための手段】上記の課題を解決するた
めに、請求項1に記載の手段を採用することができる。
この手段によると、工作物を載置するテーブルに対向し
てフレームを設け、工具ハンドの基台をフレームに固定
する。工具ハンドのトラベリングプレートに工作物を加
工するための工具ユニットを装着し、基台とトラベリン
グプレートとを複数のアームで連結する。そして工具ユ
ニットの先端の位置及び姿勢をそれぞれ入力し、それら
位置及び姿勢における誤差を出力する誤差演算手段を備
え、補正指令値演算手段により工作物を工具ユニットの
先端で加工するための加工指令値を誤差演算手段に入力
し、そこで得られた誤差から加工指令値を補正し、補正
指令値を演算する。制御手段により、演算された補正指
令値に基づいて工具ハンドを駆動し、工具ユニットの先
端の位置及び姿勢を制御する。これにより工具ユニット
の先端の位置及び姿勢に対応した適切な誤差を算出する
ことができるので、精度よく誤差補正を行うことができ
る。
【0006】また請求項2に記載の手段によれば、誤算
演算手段をニューラルネットワークで構成することで、
工具ユニットの先端の位置及び姿勢に対応した誤差をよ
り適切に算出することができる。
【0007】請求項3に記載の手段によれば、基台に対
するトラベリングプレートの位置及び姿勢を検出するた
めに、基台とトラベリングプレートとを測定手段で連結
する。そして誤差マップ作成手段により走査プログラム
を用いて工具ハンドを駆動させ、工具ユニットの先端を
作業空間に設けられた所定の複数の格子点のそれぞれに
位置決め及び姿勢決めする。そのときの工具ハンドへの
位置及び姿勢の指令値と、測定手段からの検出値に基づ
いた工具ユニットの先端の位置及び姿勢の実測値との差
からそれぞれの位置及び姿勢における誤差を誤差マップ
作成手段により演算して誤差マップを作成する。そして
学習手段により誤差マップを教師データとしてニューラ
ルネットワークに所定の入出力特性を学習させる。これ
により誤差マップのための記憶容量が膨大とならない程
度にサンプリング数を少なくして、誤差マップ作成の作
業時間を短くできる。またニューラルネットワークで学
習を行うことで、サンプリングした以外の位置及び姿勢
においても適切な誤差を算出することができるので、高
精度な誤差補正を行うことができる。
【0008】
【発明の実施の形態】以下、本発明を具体的な実施例に
基づいて説明する。図1は、本発明に係わる工具ハンド
10を用いた工作機械Mを示した全体構成図である。工
具ハンド10は、工作物Wを載置するテーブル152を
具備した門型フレーム150の天井に支持柱151を介
して吊設されており、制御装置70(制御手段に相当)
により工具ハンド10を駆動して、その先端に装着され
た工具ユニットTを所望の位置に移動したり、所望の方
向(姿勢)に向けたりして工作物Wの加工を行うもので
ある。
【0009】次に、図2〜図6に基づいて工具ハンド1
0について詳細に説明する。図2は工具ハンド10の全
体の構成を示した斜視図であり、図3は工具ハンド10
の一部の構成を示した側面図である。また図4及び図5
は測定リンク40(測定手段に相当)の構成を示した斜
視図であり、図6は第五回転エンコーダ60の取付け状
態を示した断面図である。図2に示すように工具ハンド
10は、主に門型フレーム150の天井に支持柱151
を介して吊設された基台11と、この基台11の下方に
位置し、下面に工具ユニットTを装着するトラベリング
プレート12と、このトラベリングプレート12を基台
11に連結する6本のアーム13U、13u、13V、
13v、13W、13wと、基台11とトラベリングプ
レート12との中心間を連結し、基台11に対するトラ
ベリングプレート12の位置及び姿勢(詳細にはトラベ
リングレート12の下面に装着される工具ユニットTの
刃具先端の位置及び姿勢)を測定する測定リンク40と
から構成される。
【0010】基台11は六角形状の平板部材であり、一
つ置きの辺部に後述する構成のアーム13U、13u、
13V、13v、13W、13wが、アーム13Uとア
ーム13u、アーム13Vとアーム13v、アーム13
Wとアーム13wとの2本ずつを1組として3方向に放
射状に取付けられている。各アーム13U、13u、1
3V、13v、13W、13wの構成は全て同じである
ため、アーム13Uについてのみ説明すると、アーム1
3Uはロッド15U及びガイド20Uから構成されてい
る。尚、他のアームの構成に関しては番号に付された英
字が対応しているものとし、また全ロッド15U、15
u、15V、15v、15W、15wの長さは全てRと
する。
【0011】ガイド20Uはベース22U、スライドテ
ーブル26U、ボールネジ24U、サーボモータ25U
及びモータ位置検出用エンコーダ31Uから構成されて
いる。ベース22Uは、断面形状がコの字型をした部材
であり、基台11に対して所定角度K(例えば45度)
だけ傾斜して基台11に固定部材32により固定されて
いる。このベース22Uにはその長手方向にスライドテ
ーブル26Uが摺動可能に支持されている。またベース
22Uにはスライドテーブル26Uの図略のナットと螺
合するボールネジ24Uが回動可能に支持されており、
ベース22に固定されボールネジ24に連結されるサー
ボモータ25Uを駆動することにより、ボールネジ24
Uを回動し、結果としてスライドテーブル26Uをベー
ス22Uの長手方向に移動するようになっている。
【0012】上述したスライドテーブル26Uにはロッ
ド15Uがボールジョイント16Uにより連結され、ボ
ールジョイント16Uを支点としてロッド15Uはスラ
イドテーブル26Uに対して3次元方向に揺動可能とな
っている。またロッド15Uの他端は、トラベリングプ
レート12にボールジョイント17Uにて連結され、ボ
ールジョイント17Uを支点としてロッド15Uはトラ
ベリングプレート12に対して3次元方向に揺動可能と
なっている。
【0013】トラベリングプレート12は基台11より
小さな六角形状の平板部材であり、上述したボールジョ
イント17U、17u、17V、17v、17W、17
wが、基台11の辺部に対応した一つ置きの辺部にて、
同一平面上に連結されている。そして、このトラベリン
グプレート12の下面には、例えばドリルやエンドミル
等の刃物と回転駆動装置から成る工具ユニットTが装着
されている。
【0014】測定リンク40は、図3から図5に示すよ
うに2軸O1、O2回りの回転変位が可能な第一ジョイ
ント46aと、3軸O4、O5、O6回りの回転変位が
可能な第二ジョイント46bと、1軸O3方向の直動変
位が可能な伸縮リンク46cと、各5軸O1、O2、O
4、O5、O6回りの回転変位量をそれぞれ測定する5
つの回転エンコーダ42、45、53、56、60と1
軸O3方向の直動変位を測定する1つの直動エンコーダ
51とから構成される。
【0015】第一ジョイント部46aは以下のように構
成される。即ち、L字形状をした第一支持部材41が基
台11の下面中央に固定され、この第一支持部材41の
耳部41aに円柱状の第一中間部材43が基台11と平
行な第一軸O1を中心に回転可能に支持されている。こ
の第一中間部材43の第一支持部材41(詳細には基台
11)に対する第一軸O1回りの回転変位量αは第一回
転エンコーダ42にて測定されるようになっている。
【0016】第一中間部材43の側面には、L字形状を
した第二支持部材44の耳部44aが、第一軸O1と直
交する第二軸O2を中心として回転可能に支持されてお
り、第一中間部材43に対する第二支持部材44の回転
変位量βが第二回転エンコーダ45により測定されるよ
うになっている。第二支持部材44の底面には伸縮リン
ク46cが第一軸O1及び第二軸O2のそれぞれに直交
する第三軸O3方向に固定されている。伸縮リンク46
cは、側面の一方が切り欠かれ断面形状がC字状の円筒
部材47と、円筒部材47の中心穴に摺動可能に嵌合さ
れた円柱部材48から構成されている。円筒部材47の
側面には、一定のスリットが設けられたゲージ49が切
り欠き部分に沿って取付けられている。また円柱部材4
8の側面には突出部48aが形成されており、円筒部材
47の切り欠きと係合して、円筒部材47と円柱部材4
8との第三軸O3方向の直動変位を許容すると共に、第
三軸O3回りの回転を規制している。さらに突出部48
aには、ゲージ49に対向する位置にセンサ50が取付
けられており、センサ50がゲージ49のスリットをカ
ウントすることにより円筒部材47に対する円柱部材4
8の直動変位量、即ち伸縮リンク46cの長さL(詳細
には第二軸O2と後述する第四軸O4間の距離)を測定
するようになっている。このゲージ49とセンサ50に
て直動エンコーダ51を構成している。
【0017】伸縮アーム46cの先端には第二ジョイン
ト部46bが取付けられている。第二ジョイント部46
bは以下のように構成されている。即ち、円柱部材48
の先端にはL字状をした第三支持部材52が取付けられ
ている。この第三支持部材52の耳部52aには、円筒
状の第二中間部材54がその側面にて第一軸O1と平行
な第四軸O4を中心として回転可能に支持されており、
第三支持部材52に対する第二中間部材54の回転変位
量γが第三回転エンコーダ53にて測定されるようにな
っている。
【0018】第二中間部材54の軸方向にはL字状をし
た第四支持部材55の耳部55aが、第四軸O4と直交
した第五軸O5を中心に回転可能に支持され、第二中間
部材54に対する第四支持部材55の回転変位量δが第
四支持部材55に取付けられた第四回転エンコーダ56
にて測定されるようになっている。第四支持部材55の
底面は、トラベリングプレート12の中心部分に、トラ
ベリングプレート12と直交する第六軸O6を中心に回
転可能に支持されており、第四支持部材55に対するト
ラベリングプレート12の回転変位量εがトラベリング
プレート12に取付けられた第五回転エンコーダ60に
て測定されるようになっている。
【0019】尚、各回転エンコーダ42、45、53、
56、60の取付けを第五回転エンコーダ60を例にと
り図6に基づいて説明すると、トラベリングプレート1
2の中心部分に設けられた取付け穴の小径部12aに、
第四支持部材55の底面に形成された大径軸部55bが
軸受58により支持されている。そして大径軸部55b
の先端に同軸上に形成された小径軸部55cが、トラベ
リングプレート12の取付け穴の大径部12bに固定さ
れた第五回転エンコーダ60にキー結合されることによ
り取付けられている。
【0020】従って、上述した構成で基台11及びトラ
ベリングプレート12の間で6自由度を有する測定リン
ク40は、トラベリングプレート12の移動に伴い、い
かなる方向にも変位可能となっている。そして各回転エ
ンコーダ42、45、53、56、60及び直動エンコ
ーダ51の出力により、基台11に対するトラベリング
プレート12(最終的には工具ユニットTの刃物の先
端)の位置及び姿勢を極座標系(α、β、L、γ、δ、
ε)として測定可能になっている。詳細には、第一回転
エンコーダ42と第二回転エンコーダ45と直動エンコ
ーダ51によりトラベリングプレート12の位置が測定
され、第三回転エンコーダ53と第四回転エンコーダ5
6と第五回転エンコーダ60とによりトラベリングプレ
ート12の姿勢が測定される。
【0021】続いて図7に基づいて制御装置70につい
て説明する。制御装置70は中央処理装置(CPU)7
1、メモリ72、インタフェース73、74、75から
構成される。メモリ72には、加工指令値を数値情報に
変換するNCプログラムを記憶する領域、工具ハンド1
0を制御し実加工処理を実行するための制御プログラム
を記憶する領域、後述する誤差マップ作成のための走査
プログラムを記憶する領域、作成された誤差マップを記
憶する領域、ニューラルネットワークを記憶する領域、
誤差マップを教師データとしてニューラルネットワーク
の学習処理を行うプログラムを記憶する領域、学習処理
られたニューラルネットワークの結合係数を記憶する領
域などが確保されている。
【0022】インタフェース73には上述したサーボモ
ータ25U、25u、25V、25v、25W、25w
を駆動するデジタルサーボユニット81〜86が接続さ
れている。各デジタルユニット81〜86はCPU71
からの指令値(目標値)に基づいてサーボモータ25
U、25u、25V、25v、25W、25wをそれぞ
れ駆動し、各モータ位置検出用エンコーダ31U、31
u、31V、31v、31W、31wからの出力によっ
てフィードバック制御を行う。そしてサーボモータ25
U、25u、25V、25v、25W、25wによって
駆動されるスライドテーブル26U、26u、26V、
26v、26W、26wを所望の位置にそれぞれ移動す
ることにより、結果としてロッド15U、15u、15
V、15v、15W、15wを介して連結されるトラベ
リングプレート12を所望の位置及び姿勢に制御するよ
うになっている。尚、上述したインタフェース73には
各6軸をそれぞれ駆動する6つのデジタルサーボユニッ
ト81〜86が個別に接続されているが、複数軸(例え
ば6軸)を同時に制御するNCボード80等を使用して
も構わない。
【0023】インタフェース74は、上述した測定リン
ク40の各回転エンコーダ42、45、53、56、6
0及び直動エンコーダ51が接続され、各回転変位量
α、β、γ、δ、ε及び直動変位量Lがそれぞれ入力さ
れるようになっている。インタフェース75には、後述
する加工データ等を入力するキーボード76、加工デー
タや現在の工具ハンド10の状態等を表示する画面表示
装置(CRT)77、後述する誤差マップ作成処理にて
作成された誤差マップを記憶する外部記憶装置78(例
えばハードディスク等)が接続されている。
【0024】以上により構成された本実施形態の工具ハ
ンド10を用いた工作機械Mの作用を説明する。本発明
の実施形態である工作機械Mは、図8に示す処理に従っ
て工作物Wの加工が行われるようになっている。まず、
ステップ110に示すように加工データの作成を行う。
この加工データとは、工作物Wの加工点や工具の移動点
にける工具ユニットTの刃物先端(以下、単に工具先端
という)の位置及び姿勢を後述する直交座標系にて指定
したデータを列記したものである。この加工データの作
成については、制御装置70にて接続されたキーボード
76から入力しても構わないし、図略した専用のデータ
作成装置を使用しても構わない。
【0025】ここで、図9に示す工具ハンド10のモデ
ル図に基づき直交座標系における工具先端の位置及び姿
勢の指定方法について説明する。尚、説明を簡単にする
ため図9のモデル図においては、各ボールジョイント1
6U、16u、16V、16v、16W、16wはボー
ルネジ24U、24u、24V、24v、24W、24
w上を移動し、工具先端はトラベリングプレート12の
中心位置Ot に一致しているものとする。
【0026】直交座標系は、基台11の中心を原点Ob
とし、基台11上でアーム13U及びアーム13uが取
付けられている辺部に直交する方向をX軸、基台11上
でX軸に直交する方向をY軸、X軸及びY軸のそれぞれ
に直交する方向(基台11に垂直な方向)をZ軸とす
る。そして、指定される工具先端の位置Ot は原点Ob
からの各X、Y、Z軸毎の座標値で指定され、工具先端
の姿勢は各X、Y、Z軸回りのそれぞれの回転角度A、
B、Cにて設定され、(X、Y、Z、A、B、C)と表
記される。こうして加工点や移動点における工具先端の
位置及び姿勢を指定して加工データを作成する。加工デ
ータの作成が完了すると、ステップ120(図8参照)
に示すように誤差マップ作成処理(誤差マップ作成手段
に相当)が行われる。この誤差マップ作成処理とは、所
定位置に配された複数の格子点のそれぞれへ工具先端を
移動させ、そのときの工具先端の位置及び姿勢を上述し
た測定リンク40にて測定し、指令値と測定された工具
先端の位置及び姿勢(実測値)との誤差を算出し、誤差
マップを作成する処理である。この誤差マップ作成処理
を図10に示すフローチャートに基づいて詳細に説明す
る。尚、この誤差マップ作成処理では、工作物Wはテー
ブル152には載置されておらず、空運転で行われるよ
うになっている。
【0027】まず、工具先端の可動範囲内に適当な間隔
の格子点を設け、各格子点への移動指令、各格子点での
適当な数の姿勢変更指令を含む誤差測定用の走査プログ
ラムを作成しておく。格子点は、本実施例では図11に
示すように400mm ×400mm ×350mm の直方体形状に50mm
間隔で448 個設け、走査プログラムは各格子点毎に工具
センタが所定の5つの姿勢をとるように構成した。上記
走査プログラムを読み込み、ステップ210にて直交座
標系で指定された格子点データの1番目の指令値(X
1、Y1、Z1、A1、B1、C1)を入力する。ステ
ップ220に移行すると、この直交座標系で指定された
指令値(X1、Y1、Z1、A1、B1、C1)が、各
デジタルサーボユニット81、82、83、84、8
5、86に出力される出力座標系の指令値(U1、u
1、V1、v1、W1、w1)に座標変換される。
【0028】ここで、出力座標系について図9に基づい
て説明する。出力座標系は各ボールネジ24U、24
u、24V、24v、24W、24wの端点(図9にお
いては基台11との交点)をそれぞれ原点OU、Ou、
OV、Ov、OW、Owとし、各ボールネジ24U、2
4u、24V、24v、24W、24wの方向をU軸、
u軸、V軸、v軸、W軸、w軸とした6軸から構成さ
れ、(U、u、V、v、W、w)と表記される。
【0029】次に、直交座標系の指令値(X1、Y1、
Z1、A1、B1、C1)から出力座標系の指令値(U
1、u1、V1、v1、W1、w1)への変換について
説明する。ただし、出力座標系(U、u、V、v、W、
w)への変換処理は、各出力軸U、u、V、v、W、w
毎にそれぞれ同様の演算を行って変換するため、U軸
(アーム13U)についてのみ説明する。
【0030】まず、所定の角度Kにて基台11に固定さ
れているU軸(ボールネジ24U)の直交座標系におけ
る直線の方程式を求める。次に、第一番目の指令値(X
1、Y1、Z1、A1、B1、C1)にトラベリングプ
レート12が移動された場合のボールジョイント17U
の座標TUを直交座標系にて算出し、さらにこの座標T
Uを中心とした半径R(ロッド15Uの長さR)の球の
方程式を求める。そして上記求めた直線の方程式と球の
方程式から交点を算出し、この交点とU軸の原点OUと
の距離を求めて、この値を出力座標系に変換された指令
値U1とする。以上の演算をu軸、V軸、v軸、W軸、
w軸についてそれぞれ同様に行い、出力座標系における
指令値(U1、u1、V1、v1、W1、w1)を得
る。尚、上述した出力座標系への変換は、ボールジョイ
ント16Uがボールネジ24U上を移動する図9のモデ
ルについて説明されているため、実際に行われる座標変
換においては、ボールネジ24Uからボールジョイント
16Uまでの距離を考慮して座標変換を行う必要があ
る。
【0031】ステップ230に移行すると、ステップ2
20にて出力座標系に変換された指令値(U1、u1、
V1、v1、W1、w1)をデジタルサーボユニット8
1、82、83、85、85、86にそれぞれ出力し、
工具ハンド10を駆動する。すると、各サーボモータ2
5U、25u、25V、25v、25W、25wがそれ
ぞれ駆動され、各スライドテーブル26U、26u、2
6V、26v、26W、26wが各ベース22U、22
u、22V、22v、22W、22w上をそれぞれ移動
し、アーム13U、13u、13V、13v、13W、
13wにより連結されているトラベリングプレート1
2、即ち工具先端は指令された位置及び姿勢に移動され
る。この時、基台11とトラベリングプレート12との
間に連結された測定リンク40はトラベリングプレート
12の移動に伴い変位される。
【0032】工具先端(トラベリングプレート12)が
指令値(X1、Y1、Z1、A1、B1、C1)に移動
されると、ステップ240にて測定リンク40に取付け
られた6つのエンコーダ42、45、51、53、5
6、60の測定値(α1、β1、L1、γ1、δ1、ε
1)が入力される。ステップ250に移行すると、ステ
ップ240にて測定された測定値(α1、β1、L1、
γ1、δ1、ε1)が直交座標系の測定値(x1、y
1、z1、a1、b1、c1)に座標変換される。即
ち、測定リンク40にて測定される工具先端の位置及び
姿勢の測定値は、極座標系として測定されるため、これ
を式(1)により直交座標系に変換する。
【0033】
【数1】 x1=L1×sin β1 y1=L1×cos β1×sin α1 z1=−L1×cos β1×cos α1 a1=γ1+α1 b1=δ1+β1 c1=ε1 ──(1)
【0034】尚、上式は第一軸O1をX軸方向に向けた
場合の式である。また上式においては第一軸O1から原
点Ob までの距離と、第四軸O4から工具先端までの距
離が考慮されていないため、実際の変換に際してはこれ
らの距離を考慮して直交座標系の測定値(x1、y1、
z1、a1、b1、c1)を求める必要がある。
【0035】ステップ260に移行すると、ステップ2
50にて直交座標系に変換された測定値(x1、y1、
z1、a1、b1、c1)とステップ210にて入力し
た指令値(X1、Y1、Z1、A1、B1、C1)との
それぞれの差である誤差値(Δx1、Δy1、Δz1、
Δa1、Δb1、Δc1)が算出され、ステップ270
にてこの誤差値(Δx1、Δy1、Δz1、Δa1、Δ
b1、Δc1)を指令値(X1、Y1、Z1、A1、B
1、C1)に対応させ、誤差マップとして外部記憶装置
78に記憶する。そしてステップ280にて次の指令値
の有無が判別され、指令値が存在する場合には、上述し
たステップ210からステップ270までの処理を繰り
返し、次の指令値が存在しない場合には誤差マップ作成
処理を終了する。このようにして全ての格子点の位置及
びその位置での5つの姿勢に対して誤差値を算出し、誤
差マップを作成する。
【0036】誤差マップの作成の後、ステップ130に
てニューラルネットワークを用いて誤差を補正し、指令
値の補正処理を行う。図12はニューラルネットワーク
100の構成を示した構造図である。ニューラルネット
ワーク100は、入力層(第一層)と中間層(第二層)
と出力層(第三層)の3層で構成されている。入力層は
指令値(X、Y、Z、A、B、C)を入力し、出力層は
誤差(ΔX、ΔY、ΔZ、ΔA、ΔB、ΔC)を出力す
る。
【0037】多層構造のニューラルネットワークは、一
般的に次の演算を行う装置として定義される。第i層の
第j番目の素子の出力O i j は式(2)で演算される。
但し、i≧2である。
【数2】 O i j =f(I i j ) ─(2)
【数3】
【数4】 f(x)=1/{1+exp(−x)} ─(4)
【0038】ここで、V i j は第i層の第j番目の演算
素子のバイアス示し、W i-1 k , , i j は第(i−1)
層の第k番目の素子と第i層の第j番目の素子間の結合
係数を示している。またO 1 j は第一層の第j番目の素
子の出力を表す。即ち、Djを第j番目への入力値とす
れば、第一層では入力値と出力値とが等しいのでDj
1 j であり、D1 =X、D2 =Y、D3 =Z、D4
A、D5 =B、D6 =Cである。
【0039】次に図13に示すフローチャートを用いて
ニューラルネットワーク100の具体的な演算手順につ
いて説明する。各素子の演算は、RAMの結合係数領域
に記憶されている結合係数を参照しつつ、ニューラルネ
ットワーク領域に記憶されたプログラムを実行すること
により行われる。ステップ310において中間層(第二
層)の第j番目の素子は、入力層(第一層)の各素子か
らの出力値O 1 j を入力して、式(2)を層番号と第一
層の素子数を用いて具体化した積和演算を行う。その演
算式を式(5)に示す。
【数5】
【0040】次にステップ320により式(5)の入力
値の積和関数値のシグモイド関数により中間層の各素子
の出力が演算される。中間層の第i番目の素子の出力値
は式(6)で演算される。
【数6】 O 2 j =f(I 2 j )=1/{1+exp(−I 2 j )} ─(6) この出力値O 2 j は出力層(第三層)の各素子の入力値
となる。次にステップ330にて出力層の各素子の入力
値の積和演算を式(7)を用いて行う。
【0041】
【数7】
【0042】次にステップ340にて式(8)よりシグ
モイド関数により出力層の各素子の出力値δj 、即ち誤
差(ΔX、ΔY、ΔZ、ΔA、ΔB、ΔC)が演算され
る。ここで、δ1 =ΔX、δ2 =ΔY、δ3 =ΔZ、δ
4 =ΔA、δ5 =ΔB、δ6=ΔCである。
【数8】 δj =f(I 3 j )=1/{1+exp(−I 3 j )} ─(8)
【0043】ニューラルネットワーク100は、初期学
習としてメモリ72の学習プログラム領域に記憶された
図14に示される手順のフローチャートに従ってプログ
ラムが実行されることにより学習される。結合係数の学
習は、よく知られたバックプロパーゲーション法により
実行される。この学習は、各種の事象に関する多数の入
力データ(各格子点の指令値)に対して、それぞれの出
力がそれぞれの最適な教師データとなるように繰り返し
実行される。図14のステップ410においてメモリ7
2に記憶された入力データと教師データを読み込み、次
にステップ420において出力層の各素子の学習信号が
式(9)により演算される。
【0044】
【数9】 Y 3 j =(Tj −δj )・f’(I 3 j ) ─(9) ここで、Tj は出力層の出力である補正量δj に対する
教師信号であり、T1=Δx1、T2 =Δy1、T3
Δz1、T4 =Δa1、T5 =Δb1、T6 =Δc1で
ある。またf’(x)はシグモイド関数の導関数であ
る。続いてステップ430において中間層の各素子の学
習信号が式(10)により演算される。
【0045】
【数10】
【0046】次にステップ440において出力層の各層
の結合係数が補正される。このとき補正量は式(11)
により求められる。
【数11】 Δw 2 i ,3 ,j(t) =P・Y 3 j ・f(I 2 i )+Q・Δw 2 i ,3 ,j(t-1) ─(11) ここで、Δw 2 i ,3 ,j(t) は出力層の第j番目の素子と
中間層の第i番目の素子との間の結合係数の第t回目演
算の変化量であり、Δw 2 i ,3 ,j(t-1) はその結合係数
の前回の補正量である。尚、P,Qは比例定数である。
よって結合係数は式(12)により補正される
【数12】 W 2 i ,3 ,j+Δw 2 i ,3 ,j(t) →W 2 i ,3 ,j ─(12)
【0047】次にステップ450において中間層の各素
子の結合係数が出力層と同様に補正される。その結合係
数の補正量は出力層の場合と同様に式(13)により求
められる。
【数13】 Δw 1 i ,2 ,j(t) =P・Y 2 j ・f(I 1 i )+Q・Δw 1 i ,2 ,j(t-1) ─(13) ここで、Δw 1 i ,2 ,j(t) は中間層の第j番目の素子と
入力層の第i番目の素子との間の結合係数の第t回目演
算の変化量であり、Δw 1 i ,2 ,j(t-1) はその結合係数
の前回の補正量である。よって結合係数は式(14)に
より補正される。
【数14】 W 1 i ,2 ,j+Δw 1 i ,2 ,j(t) →W 1 i ,2 ,j ─(14) 誤差マップの全ての入力データ及びそれに対する教師デ
ータに対して上記の補正が行われ(ステップ460)、
結合係数が収束したか否かを判定し、収束するまで同様
の演算が繰り返される(ステップ470)。尚、上記の
図14に示される処理が学習手段に相当する。
【0048】上述したように誤差マップを作成し、ニュ
ーラルネットワーク100による学習により結合係数の
補正処理が完了すると、図8のステップ140に示すよ
うに実際の工作物Wの加工を行う実加工処理が実行され
る。実加工処理について図15のフローチャートに基づ
いて説明する。尚、この実加工処理が実行される前に工
作機械Mのテーブル152には工作物Wが取付けられて
いるものとする。
【0049】ステップ510にて、前記ステップ110
にて作成された加工データの1番目の指令値(X1 、Y
1 、Z1 、A1 、B1 、C1 )が入力される。続くステ
ップ520では上述したニューラルネットワーク100
から指令値(X1 、Y1 、Z1 、A1 、B1 、C1 )に
対応する誤差値(ΔX1 、ΔY1 、ΔZ1 、ΔA1 、Δ
1 、ΔC1 )が出力される。
【0050】ステップ530にて指令値(X1 、Y1
1 、A1 、B1 、C1 )を誤差値(ΔX1 、ΔY1
ΔZ1 、ΔA1 、ΔB1 、ΔC1 )に基づいて補正し、
補正指令値(X1 ’、Y1 ’、Z1 ’、A1 ’、
1 ’、C1 ’)を算出する。この処理は補正指令値演
算手段に相当する。この補正は、例えば指令値(X1
1、Z1 、A1 、B1 、C1 )から誤差値(ΔX1
ΔY1 、ΔZ1 、ΔA1 、ΔB1 、ΔC1 )を減算する
ことにより行われる。
【0051】ステップ540にて、ステップ530にて
算出された補正指令値(X1 ’、Y1 ’、Z1 ’、
1 ’、B1 ’、C1 ’)を上述した誤差マップ作成処
理のステップ220と同様に出力座標系の補正指令値
(U1 ’、u1 ’、V1 ’、v1 ’、W1 ’、w1 ’)
に座標変換する。そしてステップ550にて座標変換さ
れた補正指令値(U1 ’、u1 ’、V1 ’、v1 ’、W
1 ’、w1 ’)をデジタルサーボユニット81、82、
83、84、85、86にそれぞれ出力し、工具ハンド
10を駆動してトラベリングプレート12(工具先端)
を指令値(目標値)に移動して工作物Wの加工を行う。
【0052】ステップ560にて次の指令値が存在する
か否かが判別され、次の指令値が存在する場合にはステ
ップ510からステップ550まで繰り返されて加工が
継続され、次の指令値が存在しない場合は加工を完了す
る。以上に述べたように本実施例における工作機械M
は、走査プログラムにより工具ハンド10を駆動して、
そのときの測定リンク40による測定される工具先端の
位置及び姿勢から誤差マップを作成し、この誤差マップ
を用いてニューラルネットワーク100による学習を行
うことで、サンプリングした位置及び姿勢以外の位置及
び姿勢においても適切な誤差値を算出することができ
る。この誤差値を指令値に加味して指令値を補正し、補
正指令値を用いて工作物Wを加工することで高精度な加
工が可能である。
【0053】尚、上述した本発明に係わる実施例におけ
る工具ハンド10の測定リンク40は、基台11に対し
て第一軸O1及び第二軸O2回りに回転可能な2自由度
を有する第一ジョイント部46aと、トラベリングプレ
ート12に対して第四軸O4、第五軸O5及び第六軸O
6回りに回転可能な3自由度を有する第二ジョイント部
46bとによって、基台11とトラベリングプレート1
2との間に接続されているが、その取付け方向を逆向き
にし、基台11に対して3自由度を有し、トラベリング
プレート12に対して2自由度を有して接続しても上述
した工具先端(トラベリングプレート12)の位置及び
姿勢の測定は可能である。
【0054】上記実施例ではニューラルネットワーク1
00を3層構造としたが、ニューラルネットワーク10
0の構造はこれに限定されるものではない。また上記実
施例では、格子点サイズを50mmとして400mm ×400mm ×
350mm の直方体形状に448 個設ける構成としたが、格子
点のサイズ及び個数はこれに限定せず、誤差マップ作成
時における各格子点毎の工具の姿勢の数も上記実施例中
の数に限定しない。上記実施例では、ニューラルネット
ワーク100の入力値を直交座標系(X、Y、Z、A、
B、C)とし、得られた補正指令値を出力座標系(U、
u、V、v、W、w)に座標変換する構成としたが、入
力値を出力座標系(U、u、V、v、W、w)に座標変
換し、その値をニューラルネットワーク100に入力す
る構成としてもよい。このとき出力座標系(U、u、
V、v、W、w)に座標変換された教師データを用いて
ニューラルネットワーク100を学習させ、出力値とし
て出力座標系(U、u、V、v、W、w)に座標変換さ
れた誤差値が得られる。
【0055】上記実施例ではニューラルネットワーク1
00の入力値を工具ハンド10の位置及び姿勢のみとし
たが、他の要因、例えば誤差要因として考えられる温度
や工具重量等を入力値としてもよい。また上記実施例で
は工作物Wの実加工においてリアルタイム処理にて誤差
演算や座標変換を行う構成としているが、バッチ処理に
て加工プログラムの誤差演算や座標変換を行い、予め補
正された位置及び姿勢の指令データを取得しておいても
よい。
【発明の効果】
【0056】上記に示されるように本発明によれば、ニ
ューラルネットワークを用いることによって適切な誤差
値を得ることができ、この誤差値に基づいて指令値を補
正し、補正指令値を用いて加工を行うことで高精度加工
が実現できる。
【図面の簡単な説明】
【図1】本発明に係わる工具ハンドを門型フレームに取
付けた状態を示した構造図。
【図2】本発明に係わる工具ハンドの構成を示した構造
図。
【図3】本発明に係わる工具ハンドの構成を示した斜視
図。
【図4】本発明に係わる測定リンクの構成を示した斜視
図。
【図5】本発明に係わる測定リンクの構成を示した斜視
図。
【図6】本発明に係わる第五エンコーダの取付け状態を
示した断面図。
【図7】本発明に係わる制御装置のハードウェア構成を
示したブロック図。
【図8】本発明に係わる工具ハンドを用いた工作機械の
作用の手順を示したフローチャート。
【図9】本発明に係わる工具ハンドの座標系を示した模
式図。
【図10】本発明に係わる誤差マップ作成処理を示した
フローチャート。
【図11】本発明に係わる誤差マップ作成時の格子点モ
デルを示した模式図。
【図12】本発明に係わるニューラルネットワークの構
成を示した構成図。
【図13】本発明に係わるニューラルネットワークの演
算手順を示したフローチャート。
【図14】本発明に係わるニューラルネットワークの学
習手順を示したフローチャート。
【図15】本発明に係わる実加工処理の手順を示したフ
ローチャート。
【符号の説明】
10 工具ハンド 11 基台 12 トラベリングプレート 13U、13u、13V、13v、13W、13w
アーム 25U、25u、25V、25v、25W、25w
サーボモータ 31U、31u、31V、31v、31W、31w
エンコーダ 40 測定リンク 42、45、53、56、60 回転エンコーダ 51 直動エンコーダ 70 制御装置 72 メモリ 73〜75 インタフェース 81〜86 デジタルサーボユニット 100 ニューラルネットワーク
───────────────────────────────────────────────────── フロントページの続き (72)発明者 渡辺 一樹 愛知県豊田市トヨタ町1番地 トヨタ自動 車株式会社内

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 工作物を載置するテーブルに対向したフ
    レームに工具ハンドを設け、該工具ハンドが、前記フレ
    ームに固定される基台と、前記工作物を加工するための
    工具ユニットが装着されるトラベリングプレートと、前
    記基台と前記トラベリングプレートとを連結し、前記基
    台に対する前記トラベリングプレートの位置及び姿勢を
    変化させる複数のアームとから成る工作機械において、 前記工具ユニットの先端の位置及び姿勢を入力し、その
    位置及び姿勢における誤差を出力する誤差演算手段と、 前記工作物を前記工具ユニットで加工するための加工指
    令値を前記誤算演算手段に入力し、前記誤算演算手段で
    得られた前記誤差を用いて前記加工指令値を補正し、補
    正指令値を演算する補正指令値演算手段と、 前記補正指令値に基づいて前記工具ハンドを駆動して前
    記工具ユニットの先端の位置及び姿勢を制御する制御手
    段とから成ることを特徴とする誤差補正機能を備えた工
    作機械。
  2. 【請求項2】 前記誤差演算手段は、ニューラルネット
    ワークで構成されていることを特徴とする請求項1に記
    載の誤差補正機能を備えた工作機械。
  3. 【請求項3】 前記基台と前記トラベリングプレートと
    を連結し、前記基台に対する前記トラベリングプレート
    の位置及び姿勢を検出する測定手段と、 走査プログラムを用いて前記工具ハンドを駆動させ、前
    記工具ユニットの先端を作業空間に設けられた所定の複
    数の格子点のそれぞれに位置及び姿勢決めし、そのとき
    の前記工具ハンドへの位置及び姿勢の指令値と前記測定
    手段からの検出値に基づいた前記工具ユニットの先端の
    位置及び姿勢の実測値との差からそれぞれの位置及び姿
    勢における誤差を演算し、誤差マップを作成する誤差マ
    ップ作成手段と、 前記誤差マップを教師データとして前記ニューラルネッ
    トワークに所定の入出力特性を学習させる学習手段とを
    備えたことを特徴とする請求項2に記載の誤差補正機能
    を備えた工作機械。
JP8071283A 1996-02-29 1996-02-29 誤差補正機能を備えた工作機械 Pending JPH09237112A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8071283A JPH09237112A (ja) 1996-02-29 1996-02-29 誤差補正機能を備えた工作機械

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8071283A JPH09237112A (ja) 1996-02-29 1996-02-29 誤差補正機能を備えた工作機械

Publications (1)

Publication Number Publication Date
JPH09237112A true JPH09237112A (ja) 1997-09-09

Family

ID=13456233

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8071283A Pending JPH09237112A (ja) 1996-02-29 1996-02-29 誤差補正機能を備えた工作機械

Country Status (1)

Country Link
JP (1) JPH09237112A (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008269316A (ja) * 2007-04-20 2008-11-06 Makino Milling Mach Co Ltd 数値制御工作機械及び数値制御装置
WO2009057229A1 (ja) 2007-11-02 2009-05-07 Makino Milling Machine Co., Ltd. エラーマップ作成方法及び装置並びにエラーマップ作成機能を有した数値制御工作機械
WO2011010397A1 (ja) * 2009-07-22 2011-01-27 株式会社牧野フライス製作所 誤差補正方法及び工作機械
WO2013014714A1 (ja) * 2011-07-28 2013-01-31 新日本工機株式会社 数値制御装置及び工作機械
WO2018092243A1 (ja) * 2016-11-17 2018-05-24 株式会社Fuji 作業位置補正方法および作業ロボット
WO2018092236A1 (ja) * 2016-11-17 2018-05-24 株式会社Fuji 作業ロボットおよび作業位置補正方法
JP2018114578A (ja) * 2017-01-17 2018-07-26 ファナック株式会社 ロボット制御装置
US10401849B2 (en) * 2015-12-01 2019-09-03 Omron Corporation Controller for performing hybrid control using velocity and force
WO2024018736A1 (ja) * 2022-07-19 2024-01-25 株式会社神戸製鋼所 ロボットの制御方法、およびロボットの制御装置

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008269316A (ja) * 2007-04-20 2008-11-06 Makino Milling Mach Co Ltd 数値制御工作機械及び数値制御装置
EP2975475A1 (en) 2007-11-02 2016-01-20 Makino Milling Machine Co. Ltd. Method and device for preparing error map and numerically controlled machine tool having error map preparation function
KR101158772B1 (ko) * 2007-11-02 2012-06-22 마키노 밀링 머신 주식회사 수치제어 공작기계 및 수치제어 장치
WO2009057229A1 (ja) 2007-11-02 2009-05-07 Makino Milling Machine Co., Ltd. エラーマップ作成方法及び装置並びにエラーマップ作成機能を有した数値制御工作機械
US8680806B2 (en) 2007-11-02 2014-03-25 Makino Milling Machine Co., Ltd. Numerically controlled machine tool and numerical control device
EP2221692A2 (en) 2007-11-02 2010-08-25 Makino Milling Machine Co. Ltd. Numerically controlled machine tool and numerical control device
US8786243B2 (en) 2007-11-02 2014-07-22 Makino Milling Machine Co., Ltd. Method and device for preparing error map and numerically controlled machine tool having error map preparation function
WO2011010397A1 (ja) * 2009-07-22 2011-01-27 株式会社牧野フライス製作所 誤差補正方法及び工作機械
WO2013014714A1 (ja) * 2011-07-28 2013-01-31 新日本工機株式会社 数値制御装置及び工作機械
US10401849B2 (en) * 2015-12-01 2019-09-03 Omron Corporation Controller for performing hybrid control using velocity and force
WO2018092243A1 (ja) * 2016-11-17 2018-05-24 株式会社Fuji 作業位置補正方法および作業ロボット
WO2018092236A1 (ja) * 2016-11-17 2018-05-24 株式会社Fuji 作業ロボットおよび作業位置補正方法
JP2018114578A (ja) * 2017-01-17 2018-07-26 ファナック株式会社 ロボット制御装置
CN108326876A (zh) * 2017-01-17 2018-07-27 发那科株式会社 机器人控制装置
CN108326876B (zh) * 2017-01-17 2019-09-06 发那科株式会社 机器人控制装置
US10953540B2 (en) 2017-01-17 2021-03-23 Fanuc Corporation Robot control device
WO2024018736A1 (ja) * 2022-07-19 2024-01-25 株式会社神戸製鋼所 ロボットの制御方法、およびロボットの制御装置

Similar Documents

Publication Publication Date Title
KR101158772B1 (ko) 수치제어 공작기계 및 수치제어 장치
EP1775077B1 (en) Parallel kinematic machine, calibration method of parallel kinematic machine, and calibration program product
US6822412B1 (en) Method for calibrating and programming of a robot application
Zargarbashi et al. Single setup estimation of a five-axis machine tool eight link errors by programmed end point constraint and on the fly measurement with Capball sensor
JP2651251B2 (ja) スカラ型ロボットの機構誤差補正方法
US20030167103A1 (en) Robot machining tool position and orientation calibration
US11673275B2 (en) Through-beam auto teaching
JP5968749B2 (ja) 幾何誤差同定方法と当該幾何誤差同定方法を使用した数値制御方法、数値制御装置及びマシニングセンタ
JP2008269316A (ja) 数値制御工作機械及び数値制御装置
US20210225607A1 (en) Calibrating method and calibrating system
JP2002263973A (ja) 工作機械
CN115648228B (zh) 工业机器人多源误差补偿方法、装置、设备及存储介质
JP3349652B2 (ja) オフラインティーチング方法
JPH09237112A (ja) 誤差補正機能を備えた工作機械
Santolaria et al. Self-alignment of on-board measurement sensors for robot kinematic calibration
JPH0966480A (ja) 工具ハンドおよびそれを用いた工作機械
EP0353305A1 (en) Industrial robot capable of automatically changing operating conditions depending on its attitude of installation
JP2002273676A (ja) 工作機械の制御方法
JP2016154039A (ja) エラーマップ作成方法及び装置並びにエラーマップ作成機能を有した数値制御工作機械
CN114290330B (zh) 机器人的校准方法和校准装置、机器人和可读存储介质
JP4244705B2 (ja) 回転機構付きレーザ加工ヘッドのキャリブレーション装置およびその方法
KR20010072332A (ko) 3차원 택틸 시임 추적 장치
CN116133797A (zh) 机器人控制装置
WO2022195938A1 (ja) ロボットシステムの位置決め精度測定方法
EP4212822A1 (en) Mapping of sensor error data from a coordinate positioning machine