JP5339999B2 - Numerical control device having interference check function - Google Patents
Numerical control device having interference check function Download PDFInfo
- Publication number
- JP5339999B2 JP5339999B2 JP2009091334A JP2009091334A JP5339999B2 JP 5339999 B2 JP5339999 B2 JP 5339999B2 JP 2009091334 A JP2009091334 A JP 2009091334A JP 2009091334 A JP2009091334 A JP 2009091334A JP 5339999 B2 JP5339999 B2 JP 5339999B2
- Authority
- JP
- Japan
- Prior art keywords
- interference check
- interference
- machine
- machine position
- numerical control
- 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.)
- Active
Links
Images
Landscapes
- Numerical Control (AREA)
Abstract
Description
本発明は、工具やワーク等の機械可動部の輪郭及び機械の固定部の輪郭を記憶しておき、この記憶した輪郭モデルに基づいて干渉チェックを行う機能を備えた数値制御装置に関する。 The present invention relates to a numerical control device having a function of storing an outline of a movable part of a machine such as a tool or a workpiece and an outline of a fixed part of the machine and performing an interference check based on the stored outline model.
数値制御装置で制御される工作機械とは、予め作成されたNCプログラムに基づいて、数値制御装置が機械の可動部(制御軸)を駆動制御し、被加工物のワーク等に加工を行うものである。NCプログラムに間違いがあるような場合や、機械へのワークの取り付け間違いがあるような場合や、工具オフセットの入力に誤りがあるような場合などによって、機械運転中に工具がワークやワークを取り付ける治具等に衝突する等の機械可動部と他の物との干渉が発生する場合がある。 A machine tool controlled by a numerical control device is one in which the numerical control device drives and controls the movable part (control axis) of the machine based on an NC program created in advance to process a workpiece or the like of a workpiece. It is. The tool attaches the workpiece or workpiece during machine operation, such as when there is an error in the NC program, when there is an error in attaching the workpiece to the machine, or when there is an error in the tool offset input. Interference between the machine movable part and other objects, such as collision with a jig or the like, may occur.
上述の干渉を予測し、アラームを発生させる機能を有する数値制御装置は既に公知である。干渉予測方法は、例えば、ワーク形状、工具形状、機械の干渉チェック面等の機械形状を予め設定しておき、プログラムより移動指令を読み込み、該移動指令と設定したワーク形状、工具形状、機械形状に基づいてワークと工具又は機械が干渉していないかをチェックする。 A numerical control device having a function of predicting the above-described interference and generating an alarm is already known. In the interference prediction method, for example, a workpiece shape, a tool shape, a machine shape such as a machine interference check surface is set in advance, a movement command is read from a program, and the workpiece shape, tool shape, and machine shape set as the movement command are read. Check whether the workpiece and tool or machine are not interfering with each other.
干渉チェック機能を有する数値制御装置として特許文献1には、干渉チェック装置が自動運転中に機械の干渉チェックを行うために、干渉を検出してから機械を安全に停止させるのに必要な時間分、実際の機械位置より一定時間先行した機械位置を使用する技術が開示されている。
As a numerical control device having an interference check function,
また、特許文献2には、干渉チェックの周期が長くても確実に干渉発生を予測するために、前回の干渉チェック時の可動部の位置から、今回の干渉チェック時の可動部の位置までの移動における各軸の最大位置、最小位置を取得する技術が開示されている。
Further, in
背景技術で説明した特許文献1に開示される技術において、干渉チェックを正確に行うために、干渉チェック装置は、数値制御装置が補間周期毎に出力する一定時間先行した全ての機械位置に対して、機械の動作、および素材の切削をシミュレーションしながら干渉チェックを行う必要がある。
しかし、干渉チェック処理には非常に大量な計算量が必要なため、数値制御装置の補間周期時間内には干渉チェック処理を完了できず、そのため、干渉チェック装置は、前記一定時間先行した機械位置を取りこぼすことがある。その結果、機械の実際の動作と干渉チェック装置が認識した動作に差異が生じ、干渉を検出できない場合や、機械の実際の動作と干渉チェック装置の素材切削のシミュレーションとに差異が生じ、切削された素材の形状が実際と異なり、干渉チェックを正しく行えないという問題があった(図6〜図8参照)。
In the technology disclosed in
However, since the interference check process requires a very large amount of calculation, the interference check process cannot be completed within the interpolation cycle time of the numerical control device. May be missed. As a result, there is a difference between the actual operation of the machine and the operation recognized by the interference check device, and when the interference cannot be detected or there is a difference between the actual operation of the machine and the material cutting simulation of the interference check device. Unlike the actual shape of the material, there was a problem that the interference check could not be performed correctly (see FIGS. 6 to 8).
図6に示される干渉が検出不可能な例を説明する。移動動作が直線移動の早送りの場合で、干渉チェック装置が最初に干渉チェックを行うために取得した位置をP1とし、干渉チェック装置ではP1に対する干渉チェック処理時間に、数値制御装置の補間周期時間の10倍の時間を要した場合、数値制御装置は干渉チェック装置が干渉チェック処理を行う間にP2、P3、・・・P10、P11の位置を出力する。干渉チェック装置はP1の位置で干渉チェックを行い、次の干渉チェックを行うために機械位置を取得すると、P11の位置が取得される。この結果、干渉チェック装置は移動経路をP1→P11への早送り移動とみなすため、干渉を検出することはできない。 An example in which the interference shown in FIG. 6 cannot be detected will be described. In the case where the moving operation is fast-forwarding of linear movement, the position acquired by the interference check device for performing the interference check first is P1, and in the interference check device, the interference check processing time for P1 is equal to the interpolation cycle time of the numerical control device. When ten times the time is required, the numerical controller outputs the positions of P2, P3,... P10, P11 while the interference check device performs the interference check process. When the interference check device performs an interference check at the position P1, and acquires the machine position to perform the next interference check, the position P11 is acquired. As a result, the interference check apparatus regards the movement path as a fast-forward movement from P1 to P11, and thus cannot detect interference.
図7に示される誤って干渉を検出する例を説明する。微小動作または円弧動作の場合、最初に干渉チェックを行うために取得した位置をP1とし、干渉チェック装置ではP1に対する干渉チェック処理時間に、数値制御装置の補間周期時間の10倍の時間を要した場合、数値制御装置では干渉チェック装置が干渉チェック処理を行う間にP2、P3、・・・、P10、P11の位置を出力する。
干渉チェック装置がP1の位置で干渉チェックを行い次の干渉チェックを行うために機械位置を取得すると、P11の位置が取得される。この結果、干渉チェック装置は移動経路をP1→P11への切削移動とみなすため、切削すべき部分(P2、P3、・・・、P10、P11の移動動作部分)が切削されず、実際の素材形状と干渉チェック装置が認識している素材に差異が生じる。そのため、続いて、実際には切削済みの部分に早送りでアプローチしてP12の位置へ移動する際、干渉チェック装置が認識している素材形状と実際の素材形状とに差異が生じているため素材に干渉したと誤検出される。
An example of erroneously detecting interference shown in FIG. 7 will be described. In the case of a minute motion or a circular motion, the position acquired for performing the interference check first is P1, and the interference check device requires 10 times the interpolation cycle time of the numerical control device for the interference check processing time for P1. In this case, the numerical control device outputs the positions of P2, P3,..., P10, P11 while the interference check device performs the interference check process.
When the interference check device performs the interference check at the position P1 and acquires the machine position to perform the next interference check, the position P11 is acquired. As a result, since the interference check device regards the movement path as a cutting movement from P1 to P11, the parts to be cut (the moving operation parts of P2, P3,..., P10, P11) are not cut and the actual material is cut. There is a difference between the shape and the material recognized by the interference check device. Therefore, when the workpiece is moved to the position of P12 by approaching the already cut portion by rapid traverse, there is a difference between the material shape recognized by the interference check device and the actual material shape. It is erroneously detected that it interfered with.
図8に示される誤って干渉を検出する例を説明する。一点鎖線の部分を加工する穴加工または溝加工の干渉チェックを行う際、最初に干渉チェックを行うために取得した位置をP1とし、干渉チェック装置はP1に対する干渉チェック処理時間に、数値制御装置の補間周期時間の10倍の時間を要した場合、数値制御装置は干渉チェック装置が干渉チェック処理を行う間にP2、P3、・・・、P10、P11の位置を出力する。なお、P1からP8は切削動作、P8からP11は早送り動作である。そのため、干渉チェック装置がP1の位置で干渉チェックを行い、次の干渉チェックを行うために機械位置を取得すると、P11の位置が早送り位置として取得される。この結果、干渉チェック装置は移動経路をP1→P11への早送り移動と見なし、早送りで素材に干渉したと誤検出される。 An example of erroneously detecting interference shown in FIG. 8 will be described. When performing the interference check for the hole processing or the groove processing for processing the portion indicated by the one-dot chain line, the position acquired for performing the interference check first is defined as P1, and the interference check device performs the interference check processing time for P1 in the numerical control device. When 10 times the interpolation cycle time is required, the numerical control device outputs the positions P2, P3,..., P10, P11 while the interference check device performs the interference check process. P1 to P8 are cutting operations, and P8 to P11 are fast-forwarding operations. Therefore, when the interference check device performs an interference check at the position P1 and acquires the machine position for the next interference check, the position P11 is acquired as the fast-forward position. As a result, the interference check device regards the movement route as fast-forward movement from P1 to P11, and erroneously detects that the material has interfered with the material by fast-forward.
また、特許文献2に開示される技術では、干渉チェックを確実に実行できるものの、各軸の最大位置と最小位置の範囲内の移動経路が特定できない。そのため、干渉が発生しない移動に対しても干渉を検出してしまう場合が生じる問題があった。
Moreover, although the technique disclosed in
そこで本発明の目的は、上記従来技術の問題点に鑑み、数値制御装置によって機械を自動運転中に干渉チェックを行うために、加工プログラムに基づいて一定時間先行した機械位置を補間周期毎に出力する数値制御装置において、干渉の発生を予測し確実にこの干渉を防止することができる機械位置のみを出力するための数値制御装置を提供することである。
また、他の目的は、可動物の動作に従って切削される素材の切削シミュレーションを行うために必要な機械位置を機械の可動部の軌跡として求め、干渉チェックにおいて正確なシミュレーションが可能な数値制御装置を提供することである。
Accordingly, in view of the above-described problems of the prior art, an object of the present invention is to output a machine position that precedes for a certain period of time based on a machining program in order to perform an interference check during automatic operation of a machine by a numerical controller. An object of the present invention is to provide a numerical controller for outputting only the machine position that can predict the occurrence of interference and reliably prevent the interference.
Another object of the present invention is to provide a numerical control device capable of obtaining a machine position necessary for performing a cutting simulation of a material to be cut according to the movement of a movable object as a locus of a movable part of the machine and performing an accurate simulation in an interference check. Is to provide.
本願の請求項1に係る発明は、
プログラムからの指令に基づいて機械の可動部を駆動制御する数値制御装置であって、可動部と他の物との干渉をチェックする干渉チェック手段を有し、該干渉チェック手段で干渉が予測されたとき可動部の移動を減速停止するようにした数値制御装置において、
前記プログラムを先読みし先読みブロック指令データに変換する先読み手段と、
可動部の実際の機械位置と該先読みブロック指令データに基づいて一定周期毎に一定時間後の先行した機械位置を算出する先行位置算出手段と、
算出された該先行した機械位置の進行方向ベクトルを算出し、最初に算出された該先行した機械位置を基準位置とし、該基準位置である機械位置の進行方向ベクトルと、その後、算出される先行した機械位置における進行方向ベクトルとを順次比較し、その角度差が予め設定した許容値を超えた機械位置を新たな基準位置とすると共に、該許容値を超えた機械位置を先行した移動軌跡として前記干渉チェック手段に出力する手段と、を備え、
前記干渉チェック手段により前記先行した移動軌跡に基づいて干渉チェックを行うことを特徴とする干渉チェック機能を有する数値制御装置である。
The invention according to
A numerical control device for driving and controlling a movable part of a machine based on a command from a program, comprising an interference check means for checking interference between the movable part and another object, and interference is predicted by the interference check means. In the numerical control device that decelerates and stops the movement of the movable part when
Prefetching means for prefetching the program and converting it into prefetch block command data;
A preceding position calculating means for calculating a preceding machine position after a predetermined time every fixed period based on the actual machine position of the movable part and the prefetch block command data;
The calculated advance direction vector of the preceding machine position is calculated, the preceding calculated machine position is set as a reference position, the advance direction vector of the machine position as the reference position, and then the calculated advance direction The traveling direction vector at the machine position is sequentially compared, and the machine position whose angle difference exceeds a preset tolerance is set as a new reference position, and the machine position exceeding the tolerance is set as a preceding movement trajectory. Means for outputting to the interference check means,
The numerical control apparatus having an interference check function, wherein the interference check unit performs an interference check based on the preceding movement trajectory.
本発明により、数値制御装置によって機械を自動運転中に干渉チェックを行うために、加工プログラムに基づいて一定時間先行した機械位置を補間周期毎に出力する数値制御装置において、干渉の発生を予測し確実にこの干渉を防止することができる先行した機械位置のみを出力する数値制御装置を提供でき、可動物の動作に従って切削される素材のシミュレーションを行うために必要な機械位置を機械の可動部の軌跡として求め、干渉チェックにおいて正確なシミュレーションが可能な数値制御装置を提供できる。 According to the present invention, in order to perform an interference check during automatic operation of a machine by a numerical controller, the occurrence of interference is predicted in a numerical controller that outputs a machine position that is preceded by a predetermined time for each interpolation period based on a machining program. A numerical control device that outputs only the preceding machine position that can reliably prevent this interference can be provided, and the machine position required for simulating the material to be cut according to the movement of the movable object can be determined. It is possible to provide a numerical control device that can be obtained as a trajectory and can perform an accurate simulation in an interference check.
以下、本発明の一実施形態について図面とともに説明する。
図1は、本発明の一実施形態の数値制御装置の機能ブロック図である。数値制御装置10は、前処理と実行に分けられる。前処理では、前処理を行う先読み手段12が加工プログラム格納部に格納された加工プログラム11から1ブロック毎その指令を読み出し、実行形式のデータに変換し、先読みブロック指令データ13を作成し、先読みブロック指令データを格納する記憶手段に格納する。
Hereinafter, an embodiment of the present invention will be described with reference to the drawings.
FIG. 1 is a functional block diagram of a numerical controller according to an embodiment of the present invention. The
実行処理を行う補間、移動指令の分配処理部14では、この先読みブロック指令データ13を1ブロック毎読み出し、該ブロックで指令された各軸移動量、各軸速度、及び送り速度オーバライド指令部23からのオーバライド値(%)に基づいて、分配周期毎の各軸可動部(各軸のサーボモータ22)へ指令する分配移動量を求め、該分配移動量を現在位置レジスタ15に加算して現在座標位置(以下、「現在位置」)を更新する。また、移動指令である該分配移動量は移動指令出力部16に出力され、該移動指令出力部16を介して加減速処理部17に出力される。加減速処理部17は、移動指令出力部16からの移動指令を受けて加減速処理を行い、サーボモータ22を制御するサーボ制御部18に、この加減速処理部により加減速処理された移動量の移動指令を出力する。
The interpolation / movement command
サーボ制御部18では、この移動指令とサーボモータ22(又は、該サーボモータで駆動される可動部)に取り付けられた位置・速度検出器からの位置、速度のフィードバックに基づいて、位置、速度のフィードバック制御及び駆動電流を検出する電流検出器からの電流フィードバックに基づいた電流のフィードバック制御を行い、アンプ(図示せず)を介してサーボモータ22を駆動制御する。なお、図1では、1つのサーボモータ22のみを示しているが、工作機械が有する各軸(各可動部)のサーボモータに対して同様の制御がなされ、各可動部は位置・速度の制御がなされる。送り速度オーバライド指令部23はオーバライド値を指定する入力手段である。
The
上述した数値制御装置10の構成は、従来から機械を制御する数値制御装置の公知の構成である。本発明の一実施形態では、従来公知の構成に更に、数値制御装置10は、一定時間後の先行位置算出部19、干渉チェックが必要な機械位置算出部20、および干渉チェック部21を備えている。
The configuration of the
一定時間後の先行位置算出部19は、先読みブロック指令データ13内の情報、または、補間移動指令の分配処理部14、または現在位置レジスタ15に格納されている機械の現在位置から実際の機械の現在位置データを取得し、先読みブロック指令データ13を元に一定時間後の機械位置を一定時間後の先行位置算出部19によって算出する。
さらに、一定時間後の先行位置の算出を行う際には、送り速度オーバライド指令部23からの指令を元に補正する。可動部の移動速度は加工プログラム上で指定された速度、送り速度オーバライド指令部23からの指令(%)により補正される。この補正された移動速度と実際の機械の機械位置と先読みブロック指令データを用いて、一定時間後の機械位置を算出することができる。
The predecessor
Further, when calculating the preceding position after a certain time, correction is made based on a command from the feed speed
干渉チェックが必要な機械位置算出部20は、干渉チェック部21が可動部の動作に従って干渉チェックを行うために必要な機械位置と切削される素材のシミュレーションを行うために必要な最低限の機械位置を算出し、干渉チェック部21に先行移動軌跡として干渉チェック部21へ出力する。干渉チェックが必要な機械位置算出部20における処理は図3に示すフローチャートを用いて後述する。
The machine
また、干渉チェック部21は、工具やワークの輪郭形状、機械の構造物などの輪郭形状を記憶し、機械位置算出部20から送られてくる干渉チェックが必要な可動部の位置に基づいて、可動部と他の物との干渉チェックが発生するか否かをチェックする手段である。本発明の実施形態では、干渉チェック部21は、干渉チェックが必要な機械位置算出部20から送られてくる先行移動軌跡に基づいて干渉チェックを行う。なお、干渉チェック部21の干渉チェック方法、処理は従来から行われている方法、処理と同じであり、詳細な説明は省略する。なお、図1では、干渉チェック部21は、数値制御装置10内に設けられているが、例えば、パーソナルコンピュータ等の情報処理装置として数値制御装置10の外部に設けてもよい。この場合には、図示しないインタフェースを介して該情報処理装置と数値制御装置10との間で干渉チェックのための情報の授受を行う。
The
図2は、本発明の一実施形態における数値制御装置が実行する処理のアルゴリズムを示すフローチャートである。数値制御装置は動作を開始すると、加工プログラムを読み出し、ステップ100以下の処理を行う。まず、前処理(ステップ100)を行って、実行データを作成し、先読みブロック指令データとして記憶する(ステップ101)。
この先読みブロック指令データに基づいて、各軸への移動指令の分配を行う実行処理を行う。まず、先頭より1ブロックの先読みブロック指令データを読み取り(ステップ102)、読み取った指令がプログラム終了指令でなければ(ステップ103)、ステップ104の移動指令の分配処理を実行する。なお、指令が移動指令でない場合には、その指令を実行するものである。
FIG. 2 is a flowchart showing an algorithm of processing executed by the numerical controller according to the embodiment of the present invention. When the numerical controller starts its operation, it reads the machining program and performs the processing from
Based on the prefetch block command data, an execution process for distributing the movement command to each axis is performed. First, prefetch block command data of one block from the head is read (step 102). If the read command is not a program end command (step 103), the movement command distribution process of
ステップ104の移動指令の分配処理は、読み出した先読みブロックで指令された位置(移動量)および送り速度と、送り速度オーバライド指令部23で指令されている速度オーバライド値に基づいて、各軸への分配周期毎の分配移動量を求める。こうして求めた分配移動量を現在位置レジスタ15に加算して現在位置を更新する(ステップ105)。
次に、先読みブロック指令データより、干渉チェック部21に干渉チェックさせるための一定時間後の位置(指令位置)を算出し出力する処理を行う(ステップ106)(図1に示される一定時間後の先行位置算出部19の処理)。この処理は、各軸への分配移動量とは直接関係しないが、この移動指令の分配周期毎に、現在の機械位置から一定時間後の位置を算出し、干渉チェックが必要な機械位置算出部20へ出力する。
The movement command distribution process in
Next, a process for calculating and outputting a position (command position) after a predetermined time for causing the
次に、干渉チェックが必要な機械位置算出部20で、干渉チェックが必要な機械位置を算出し干渉チェック部21へ出力する(ステップ107)。なお、干渉チェックが必要な機械位置の算出処理は図3に示すフローチャートを用いて後述する。次に、干渉チェック部21から軸停止指令が指令されているか判別し(ステップ108)、指令されていなければ、ステップ104で求めた分配移動量を加減速処理部17に出力し、加減速処理した後の移動量をサーボ制御部18へ出力する(ステップ109〜111)。
一方、ステップ108で干渉チェック部21から軸停止指令が指令されているとすると軸停止処理を行い(ステップ113)、加減速処理部17は、加減速処理を停止しサーボ制御部18への加減速処理された移動量のサーボ制御部18への出力を停止し、可動部の停止処理がなされる。
Next, the machine
On the other hand, if an axis stop command is instructed from the
図3は、本発明の一実施形態における数値制御装置の干渉チェックが必要な機械位置算出部20が行う処理のアルゴリズムを示すフローチャートである。
●[ステップSA1]nを1、mを2に初期設定し、ステップSA2へ移行する。
●[ステップSA2]位置Pnは最終位置か否か判断し、最終位置である場合にはステップSA10へ移行し、最終位置でない場合にはステップSA3へ移行する。最終位置か否かの判断は、nの数に基づいて行うことができる。nの最大数は、干渉チェック部21での直前の干渉チェック周期中に数値制御装置が一定時間後の先行位置算出部19で算出した先行位置の個数であり、この最大数をnが超えたか否かで位置Pnは最終位置か否か判断できる。また、干渉チェック部21での干渉チェックは周期的に繰り返される。
●[ステップSA3]位置Pnに対する進行方向ベクトルVnを求め、ステップSA4へ移行する。位置Pnにおける進行方向ベクトルは、位置Pnにおける各可動軸の移動速度指令データ(送り速度の指定データ)を用いて進行方向ベクトルを算出する。
●[ステップSA4]位置Pmは最終位置か判断し、最終位置の場合にはステップSA10へ移行し、最終位置でない場合にはステップSA5へ移行する。
●[ステップSA5]位置Pmに対する進行方向ベクトルVmを求め、ステップSA6へ移行する。
●[ステップSA6]進行方向ベクトルVnと進行方向ベクトルVmの角度差Tnmは、許容値より大きいか否か判断し大きい場合にはステップSA8へ移行し、大きくない場合にはステップSA7へ移行する。
●[ステップSA7]mを1つ増加し、ステップSA4へ戻り処理を継続する。
●[ステップSA8]Pmを干渉チェックが必要な位置として干渉チェック部へ出力し、ステップSA9へ移行する。干渉チェック部へ出力される位置Pmのデータには、切削指令のデータであるのか、早送りのデータであるのかを識別するためのデータも併せて干渉チェック部へ出力する。この識別するためのデータは先読みブロック指令データ13に含まれるデータである。
●[ステップSA9]n=mとし、ステップSA2へ移行する。
●[ステップSA10]最終位置を干渉チェック部へ出力し、処理を終了する。
FIG. 3 is a flowchart showing an algorithm of processing performed by the machine
[Step SA1] Initially set n to 1 and m to 2, and proceed to Step SA2.
[Step SA2] It is determined whether or not the position Pn is the final position. If it is the final position, the process proceeds to Step SA10, and if it is not the final position, the process proceeds to Step SA3. The determination of whether or not it is the final position can be made based on the number of n. The maximum number of n is the number of preceding positions calculated by the preceding
[Step SA3] The traveling direction vector Vn for the position Pn is obtained, and the process proceeds to Step SA4. The traveling direction vector at the position Pn is calculated by using the moving speed command data (feed speed designation data) of each movable shaft at the position Pn.
[Step SA4] It is determined whether the position Pm is the final position. If it is the final position, the process proceeds to Step SA10. If it is not the final position, the process proceeds to Step SA5.
[Step SA5] A traveling direction vector Vm for the position Pm is obtained, and the process proceeds to Step SA6.
[Step SA6] It is determined whether or not the angle difference Tnm between the traveling direction vector Vn and the traveling direction vector Vm is larger than the allowable value. If it is larger, the process proceeds to Step SA8, and if not larger, the process proceeds to Step SA7.
[Step SA7] Increment m by one and return to Step SA4 to continue the processing.
[Step SA8] Pm is output to the interference check unit as a position where the interference check is required, and the process proceeds to Step SA9. The data of the position Pm output to the interference check unit is also output to the interference check unit together with data for identifying whether it is cutting command data or rapid feed data. This data for identification is data included in the prefetch
[Step SA9] Set n = m, and proceed to Step SA2.
[Step SA10] The final position is output to the interference check unit, and the process ends.
なお、干渉チェック部21は、早送りの処理であるのか切削送りの処理であるのかは加工プログラムの指令に基づいて判断することができるので、切削送りのとき干渉チェック部21に入力する先行移動軌跡に基づいて、干渉チェック部21に記憶されている素材の形状データを更新する。
Since the
図4は、数値制御装置によって制御される機械によって素材を加工する例を説明する図である。図7の移動に対して、P1の干渉チェックを処理後、P11が取得される間に数値制御装置が出力した各補間位置(P2、P3、・・・、P11)を例にとって示す。なお、P1、P2、・・・、P11は先行位置を示し、それぞれの先行位置は、図1に示される先読みブロック指令データ13内の情報、または、補間移動指令の分配処理部14、または現在位置レジスタ15に格納されている機械の現在位置から実際の機械の現在位置を取得し、先読みブロック指令データ13を元に一定時間後の機械位置を一定時間後の先行位置算出部19で算出する。ここで、P1、P2、・・・、P10の位置における進行方向ベクトルは、それぞれV1、V2、・・・、V10とし、また、あらかじめパラメータなどに許容値(t)(2点の方向ベクトルの角度差)を設定しておく。
FIG. 4 is a diagram for explaining an example of processing a material by a machine controlled by a numerical control device. For the movement of FIG. 7, the interpolation positions (P2, P3,..., P11) output by the numerical controller while P11 is acquired after the P1 interference check is processed will be shown as an example. In addition, P1, P2,..., P11 indicate preceding positions, and each preceding position is information in the prefetch
図3に示すフローチャートの処理を、図4の各位置において処理することを例として説明する。
(1)まず、P1を基準位置とし、その進行方向ベクトル(V1)とP2に対する進行方向ベクトル(V2)の角度差(T12)を算出する。
(2)T12とtを比較し、T12>tの場合、干渉チェックが必要な位置とする。T12≦tであるため、P2は干渉チェックが必要な位置ではない。
(3)同様に、基準位置P1の進行方向ベクトルV1に対し、V3、V4、・・・を順次比較すると図4(c)に示されるようにT14>tとなり、進行方向ベクトルV4の位置すなわちP4の位置を第1の干渉チェックが必要な位置として干渉チェック部21へ出力する。
(4)基準位置をP1からP4に更新し、P4を基準位置としP4の進行方向ベクトルV4に対して以降のV5、V6、・・・を比較し、同じ処理をV10まで続け、T45>tであるので、干渉チェックが必要な位置P5を算出する。
(5)干渉チェック部21は結果的にP11を取得する際、P4およびP5の位置を同時に取得する。
The processing of the flowchart shown in FIG. 3 will be described as an example of processing at each position in FIG.
(1) First, using P1 as a reference position, an angular difference (T12) between the traveling direction vector (V1) and the traveling direction vector (V2) with respect to P2 is calculated.
(2) T12 and t are compared, and if T12> t, a position where an interference check is necessary is set. Since T12 ≦ t, P2 is not a position where an interference check is necessary.
(3) Similarly, when V3, V4,... Are sequentially compared with the traveling direction vector V1 at the reference position P1, T14> t as shown in FIG. 4C, and the position of the traveling direction vector V4, that is, The position of P4 is output to the
(4) The reference position is updated from P1 to P4, P5 is set as the reference position, the subsequent V5, V6,... Are compared with the traveling direction vector V4 of P4, the same processing is continued up to V10, and T45> t Therefore, a position P5 that requires interference check is calculated.
(5) When the
以上により、干渉チェック部21は従来取得した点(P1、P11)に加え、本発明により新たに取得できる点(P4、P5)で切削シミュレーションを行うことで、図5に示す太線のように実際の切削素材と類似した形状を認識でき、そのため、干渉チェックでの誤検出を防止することができる。
つまり、前述したように干渉チェック部21は、工具やワークの輪郭形状、機械の構造物などの輪郭形状を記憶し、干渉チェックが必要な機械位置算出部20から送られてくる干渉チェックが必要な可動部の位置に基づいて、可動部と他の物との干渉チェックが発生するか否かをチェックする手段であり、干渉チェック部21は、素材であるワークの輪郭形状を上述の方法により新たに取得した点を含めて更新することができる。
As described above, the
In other words, as described above, the
同様に、図3に示すアルゴリズムのフローチャートの処理を図6に適用した場合を説明する。
(1)まず、P1を基準位置とし、その進行方向ベクトル(V1)とP2に対する進行方向ベクトル(V2)の角度差(T12)を算出する。
(2)T12とtを比較し、T12>tの場合、干渉チェックが必要な位置とする。T12≦tであるため、P2は干渉チェックが必要な位置ではない。
(3)同様にV1に対し、V3、V4、・・・、順次比較するとT16>tとなりV6すなわちP6の位置を第1の干渉チェックが必要な位置として干渉チェック部21に出力する。
(4)さらに、P6を基準とし、進行方向V6に対して以降のV7、V8、・・・を比較し、同じ処理をV10まで続け、干渉チェックが必要な位置を算出する。
(5)結果的にP11を取得する際、P6の位置を同時に取得する。
以上により、干渉チェック部21は従来取得した点(P1、P11)に加え、本発明により新たに取得できる点(P6)で干渉チェックを行うことが可能となり、干渉を検出することが可能となる。
Similarly, the case where the process of the flowchart of the algorithm shown in FIG. 3 is applied to FIG. 6 will be described.
(1) First, using P1 as a reference position, an angular difference (T12) between the traveling direction vector (V1) and the traveling direction vector (V2) with respect to P2 is calculated.
(2) T12 and t are compared, and if T12> t, a position where an interference check is necessary is set. Since T12 ≦ t, P2 is not a position where an interference check is necessary.
(3) Similarly, when V3, V4,... Are compared sequentially with respect to V1, T16> t, and the position of V6, that is, P6 is output to the
(4) Further, with reference to P6, the subsequent V7, V8,... Are compared with the traveling direction V6, the same processing is continued up to V10, and a position where an interference check is required is calculated.
(5) As a result, when acquiring P11, the position of P6 is acquired simultaneously.
As described above, the
また、同様に、図3に示すアルゴリズムのフローチャートの処理を図8に適用した場合を説明する。
(1)まず、P1を基準位置とし、その進行方向ベクトル(V1)とP2に対する進行方向ベクトル(V2)の角度差(T12)を算出する。
(2)T12とtを比較し、T12>tの場合、干渉チェックが必要な位置とする。T12≦tであるため、P2は干渉チェックが必要な位置ではない。
(3)同様にV1に対し、V3、V4、・・・、順次比較するとT18>tとなりV8すなわちP8の位置を第1の干渉チェックが必要な位置として干渉チェック部21に出力する。
(4)さらに、P8を基準とし、V8に対して以降のV9、V10、・・・を比較し、同じ処理をV11まで続け、干渉チェックが必要な位置を算出する。
(5)結果的にP11を取得する際、P8の位置を同時に取得する。
以上により、干渉チェック部21は従来取得した点(P1,P11)に加え、本発明により新たに取得できる切削指令位置である点(P8)に基づいて素材であるワークの輪郭形状を更新することが可能となり、干渉チェックの誤検出を防止することが可能となる。
Similarly, the case where the process of the flowchart of the algorithm shown in FIG. 3 is applied to FIG. 8 will be described.
(1) First, using P1 as a reference position, an angular difference (T12) between the traveling direction vector (V1) and the traveling direction vector (V2) with respect to P2 is calculated.
(2) T12 and t are compared, and if T12> t, a position where an interference check is necessary is set. Since T12 ≦ t, P2 is not a position where an interference check is necessary.
(3) Similarly, if V3, V4,... Are sequentially compared with respect to V1, T18> t and V8, that is, the position of P8 is output to the
(4) Further, with reference to P8, V9, V10,... Are compared with V8, the same processing is continued up to V11, and a position where interference check is necessary is calculated.
(5) As a result, when acquiring P11, the position of P8 is acquired simultaneously.
As described above, the
10 数値制御装置
11 加工プログラム
12 先読み手段
13 先読みブロック指令データ
14 補間移動指令の分配処理部
15 現在位置レジスタ
16 移動指令出力部
17 加減速処理部
18 サーボ制御部
19 一定時間後の先行位置算出部
20 干渉チェックが必要な機械位置算出部
21 干渉チェック部
22 サーボモータ
23 送り速度オーバライド指令部
DESCRIPTION OF
Claims (1)
前記プログラムを先読みし、先読みブロック指令データに変換する先読み手段と、
可動部の実際の機械位置と該先読みブロック指令データに基づいて一定周期毎に一定時間後の先行した機械位置を算出する先行位置算出手段と、
算出された該先行した機械位置の進行方向ベクトルを算出し、最初に算出された該先行した機械位置を基準位置とし、該基準位置である機械位置の進行方向ベクトルと、その後、算出される先行した機械位置における進行方向ベクトルとを順次比較し、その角度差が予め設定した許容値を超えた機械位置を新たな基準位置とすると共に、該許容値を超えた機械位置を先行した移動軌跡として前記干渉チェック手段に出力する手段と、を備え、
前記干渉チェック手段により前記先行した移動軌跡に基づいて干渉チェックを行うことを特徴とする干渉チェック機能を有する数値制御装置。 A numerical control device for driving and controlling a movable part of a machine based on a command from a program, comprising an interference check means for checking interference between the movable part and another object, and interference is predicted by the interference check means. In the numerical control device that decelerates and stops the movement of the movable part when
Prefetching means for prefetching the program and converting it into prefetch block command data;
A preceding position calculating means for calculating a preceding machine position after a predetermined time every fixed period based on the actual machine position of the movable part and the prefetch block command data;
The calculated advance direction vector of the preceding machine position is calculated, the preceding calculated machine position is set as a reference position, the advance direction vector of the machine position as the reference position, and then the calculated advance direction The traveling direction vector at the machine position is sequentially compared, and the machine position whose angle difference exceeds a preset tolerance is set as a new reference position, and the machine position exceeding the tolerance is set as a preceding movement trajectory. Means for outputting to the interference check means,
A numerical control apparatus having an interference check function, wherein the interference check unit performs an interference check based on the preceding movement locus.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009091334A JP5339999B2 (en) | 2009-04-03 | 2009-04-03 | Numerical control device having interference check function |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009091334A JP5339999B2 (en) | 2009-04-03 | 2009-04-03 | Numerical control device having interference check function |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010244256A JP2010244256A (en) | 2010-10-28 |
JP5339999B2 true JP5339999B2 (en) | 2013-11-13 |
Family
ID=43097214
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009091334A Active JP5339999B2 (en) | 2009-04-03 | 2009-04-03 | Numerical control device having interference check function |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5339999B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017174119A (en) * | 2016-03-23 | 2017-09-28 | ファナック株式会社 | Numerical controller facilitating countermeasures after detection of interference |
WO2023073835A1 (en) * | 2021-10-27 | 2023-05-04 | ファナック株式会社 | Selection device, simulation device, and communication control device |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5439062B2 (en) * | 2009-07-03 | 2014-03-12 | 中村留精密工業株式会社 | Method for preventing collision of machine tools |
JP6026484B2 (en) * | 2014-10-31 | 2016-11-16 | ファナック株式会社 | System that enables independent control of peripheral equipment of machine tools |
JP6200456B2 (en) * | 2015-06-29 | 2017-09-20 | ファナック株式会社 | Interference check system between machine tool and robot |
JP6321583B2 (en) * | 2015-06-30 | 2018-05-09 | ファナック株式会社 | Numerical control device for 3D interference check corresponding to speed change |
JP6514257B2 (en) | 2017-03-29 | 2019-05-15 | ファナック株式会社 | Machine learning apparatus, servo control apparatus, servo control system, and machine learning method |
JP6836543B2 (en) * | 2018-04-27 | 2021-03-03 | ファナック株式会社 | Interference monitoring device |
JP7348013B2 (en) * | 2019-09-30 | 2023-09-20 | ファナック株式会社 | simulation device |
US20230266203A1 (en) | 2020-09-17 | 2023-08-24 | Fanuc Corporation | Abnormality determination system and program |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08152908A (en) * | 1994-11-29 | 1996-06-11 | Mitsubishi Heavy Ind Ltd | Tool moving device for machine tool |
JPH11283048A (en) * | 1998-03-30 | 1999-10-15 | Nec Corp | Overlap prevention method of moving object in computer graphics and device therefor |
JP3587363B2 (en) * | 2000-03-09 | 2004-11-10 | 三菱電機株式会社 | Numerical control device and numerical control method |
JP3662799B2 (en) * | 2000-03-09 | 2005-06-22 | 三菱電機株式会社 | Numerical control apparatus and numerical control method |
JP4221016B2 (en) * | 2006-07-25 | 2009-02-12 | ファナック株式会社 | Numerical control device for interference check |
JP2008071015A (en) * | 2006-09-13 | 2008-03-27 | Fanuc Ltd | Numerical controller |
-
2009
- 2009-04-03 JP JP2009091334A patent/JP5339999B2/en active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017174119A (en) * | 2016-03-23 | 2017-09-28 | ファナック株式会社 | Numerical controller facilitating countermeasures after detection of interference |
WO2023073835A1 (en) * | 2021-10-27 | 2023-05-04 | ファナック株式会社 | Selection device, simulation device, and communication control device |
Also Published As
Publication number | Publication date |
---|---|
JP2010244256A (en) | 2010-10-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5339999B2 (en) | Numerical control device having interference check function | |
JP4221016B2 (en) | Numerical control device for interference check | |
JP4980458B2 (en) | Machining time prediction device for numerically controlled machine tools | |
JP5139230B2 (en) | Collision prevention device in numerical control device | |
JP4351281B2 (en) | Numerical control device for controlling a 5-axis machine | |
US10007248B2 (en) | Numerical controller for retraction control | |
CN109725600B (en) | Post-processor device, machining program generating method, CNC machining system, and computer-readable information recording medium | |
US7689300B2 (en) | Numerical control unit | |
US20080249653A1 (en) | Numerical control unit | |
JP4461030B2 (en) | Numerical control apparatus and numerical control method | |
CN109725602B (en) | Numerical controller, CNC machine tool, computer-readable information recording medium, and numerical control method | |
US10048675B2 (en) | Numerical controller performing 3-dimensional interference check corresponding to feedrate change | |
US20130123968A1 (en) | Numerical control apparatus | |
JP4796936B2 (en) | Processing control device | |
US11131979B2 (en) | Numerical control device and numerical control method | |
JP2007172068A (en) | Numerical control device | |
JP5573664B2 (en) | Numerical control apparatus, movement control method, movement control program, and storage medium | |
JP2008234295A (en) | Interference check system | |
JP2010231737A (en) | Numerical control device having interference check function | |
JP6105548B2 (en) | Numerical control device with interference avoidance positioning function | |
US6658317B2 (en) | Method for setting a moving position in a machine tool | |
US9740196B2 (en) | Numerical controller for controlling drilling operation | |
US20190113906A1 (en) | Numerical control apparatus and toolpath determination method | |
JP4982170B2 (en) | Machining control device and machining control program | |
JPH11194806A (en) | Positioning control method, numerical controller for implementing the positioning control method, nc program generating device, and recording medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20111220 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130226 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130228 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130709 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130806 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5339999 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |